Communication system with whitening feedback mechanism and method of operation thereof

ABSTRACT

A communication system includes: a covariance module configured to calculate a joint-covariance based on a receiver signal for communicating a communication content in a transmitter signal with an interference signal using subcarriers based on a space-frequency block-coding scheme; a preparation module, coupled to the covariance module, configured to generate a joint-whitener with a control unit based on the joint-covariance for randomizing the interference signal; a joint whitening module, coupled to the preparation module, configured to generate a joint-whitening output based on the receiver signal and the joint-whitener; a message processing module, coupled to the joint whitening module, configured to determine a joint-estimation feedback based on the joint-whitening output; and a cancellation module, coupled to the message processing module, configured to cancel the joint-estimation feedback from the receiver signal for communicating the communication content with a device.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application claims the benefit of U.S. Provisional PatentApplication Ser. No. 61/698,394 filed Sep. 7, 2012, and the subjectmatter thereof is incorporated herein by reference thereto.

This application contains subject matter related to a concurrently filedU.S. patent application by Yingqun Yu and Jungwon Lee titled“COMMUNICATION SYSTEM WITH WHITENING MECHANISM AND METHOD OF OPERATIONTHEREOF”. The related application is assigned to Samsung ElectronicsCo., Ltd., and is identified by docket number 48-243. The subject matterthereof is incorporated herein by reference thereto.

TECHNICAL FIELD

An embodiment of the present invention relates generally to acommunication system, and more particularly to a system with whiteningfeedback mechanism.

BACKGROUND

Modern consumer and industrial electronics, especially devices such ascellular phones, navigations systems, portable digital assistants, andcombination devices, are providing increasing levels of functionality tosupport modern life including mobile communication. Research anddevelopment in the existing technologies can take a myriad of differentdirections.

The increasing demand for information in modern life requires users toaccess information at any time, at increasing data rates. However,telecommunication signals used in mobile communication experiencevarious types of interferences from numerous sources, as well ascomputational complexities rising from numerous possible formats forcommunicated information, which affect the quality and speed of theaccessible data.

Thus, a need still remains for a communication system with whiteningfeedback mechanism. In view of the ever-increasing commercialcompetitive pressures, along with growing consumer expectations and thediminishing opportunities for meaningful product differentiation in themarketplace, it is increasingly critical that answers be found to theseproblems. Additionally, the need to reduce costs, improve efficienciesand performance, and meet competitive pressures adds an even greaterurgency to the critical necessity for finding answers to these problems.

Solutions to these problems have been long sought but prior developmentshave not taught or suggested any solutions and, thus, solutions to theseproblems have long eluded those skilled in the art.

SUMMARY

An embodiment of the present invention provides a communication system,including: a covariance module configured to calculate ajoint-covariance based on a receiver signal for communicating acommunication content in a transmitter signal with an interferencesignal using subcarriers based on a space-frequency block-coding scheme;a preparation module, coupled to the covariance module, configured togenerate a joint-whitener with a control unit based on thejoint-covariance for randomizing the interference signal; a jointwhitening module, coupled to the preparation module, configured togenerate a joint-whitening output based on the receiver signal and thejoint-whitener; a message processing module, coupled to the jointwhitening module, configured to determine a joint-estimate feedbackbased on the joint-whitening output; and a cancellation module, coupledto the message processing module, configured to cancel thejoint-estimate feedback from the receiver signal for communicating thecommunication content with a device.

An embodiment of the present invention provides a method of operation ofa communication system including: calculating a joint-covariance basedon a receiver signal for communicating a communication content in atransmitter signal with an interference signal using subcarriers basedon a space-frequency block-coding scheme; generating a joint-whitenerwith a control unit based on the joint-covariance for randomizing theinterference signal; generating a joint-whitening output based on thereceiver signal and the joint-whitener; determining a joint-estimatefeedback based on the joint-whitening output; and cancelling thejoint-estimate feedback from the receiver signal for communicating thecommunication content with a device.

Certain embodiments of the invention have other steps or elements inaddition to or in place of those mentioned above. The steps or elementswill become apparent to those skilled in the art from a reading of thefollowing detailed description when taken with reference to theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a communication system with whitening feedback mechanism in anembodiment of the present invention.

FIG. 2 is an exemplary communication between the base station and themobile device.

FIG. 3 is an exemplary block diagram of the communication system.

FIG. 4 is a control flow of the communication system.

FIG. 5 is a detailed exemplary flow of the communication system.

FIG. 6 is a further detailed exemplary flow of the communication system.

FIG. 7 is a further detailed exemplary flow of the communication system.

FIG. 8 is a flow chart of a method of operation of a communicationsystem in an embodiment of the present invention.

DETAILED DESCRIPTION

The following embodiments of the present invention can be used toprocess receiver signal corresponding to transmissions usingspace-frequency block-coding scheme. An initial whitening output basedon initially whitening an interference signal with a base covariance anda base whitener can be further processed based on an iterativedetection-decoding scheme.

Detecting and decoding with the iterative detection-decoding scheme candetermine a joint-whitening output, which can be used to determine ajoint-estimation feedback according to a feedback profile. The feedbackinformation can be used to further jointly whiten the receiver signalusing a joint-covariance and a joint-whitener for data transmitted usingsubcarriers according to the space-frequency block-coding scheme. Ajoint-whitening output from the joint whitening process can further befed back using the joint-estimation feedback to determine communicationcontent as originally intended for communication in the receiver signal.

The feedback profile, the iterative detection-decoding scheme, or acombination thereof can be configured to process one code word or twoinstances of the code word simultaneously. Further, a base processingbranch and a further processing branch can be used with the feedbackprofile and the iterative detection-decoding scheme to successivelycancel the interference signal from the receiver signal.

The joint-whitening output based on the base covariance and the basewhitener provides reduction in error and increase throughput. Theinitial-whitening output from initially whitening the receiver signalusing the base covariance and the base whitener, and the joint-whiteningoutput from subsequently whitening for the space-frequency block-codingscheme using the joint-covariance and the joint-whitener provideincreased robustness with faster processing time. The interferenceestimate and the joint-estimation feedback provide reliability andaccuracy in detecting and decoding the communication content.

The iterative detection-decoding scheme in conjunction with thejoint-covariance, the joint-whitener, and the joint-estimation feedbackprovide an effective way to iteratively suppress the interference signalbased on the space-frequency block-coding scheme. The feedback profilepassing the base feedback to the base cancelling module and the furtherdetection module and passing the further feedback to the furthercancellation module and the base detection module provides reliabilityand accuracy in detecting and decoding the communication content.

An adapted instance of a reference portion in the receiver signal canindicate that a transmitter signal, an interference signal, or acombination thereof was originally transmitted according to thespace-frequency block-coding scheme.

A signal profile can characterize a transmission status of thetransmitter signal, the interference signal, or a combination thereof.Joint-covariance and joint-whitener can be calculated and generated tocomprehensively or jointly whiten and further process the receiversignal based on the signal profile. A joint-whitening output can bejointly detected and decoded to determine a communication content asoriginally intended for communication.

The signal profile and the reference portion adapted or adjusted toinclude information regarding the space-frequency block-coding schemeand provide increased accuracy and higher throughput. Also, thejoint-covariance and the joint-whitener provide decreased error rate.Further, the joint-whitening output and the joint detection processprovide increased transmission speed.

The following embodiments are described in sufficient detail to enablethose skilled in the art to make and use the invention. It is to beunderstood that other embodiments would be evident based on the presentdisclosure, and that system, process, or mechanical changes may be madewithout departing from the scope of an embodiment of the presentinvention.

In the following description, numerous specific details are given toprovide a thorough understanding of the invention. However, it will beapparent that the invention may be practiced without these specificdetails. In order to avoid obscuring an embodiment of the presentinvention, some well-known circuits, system configurations, and processsteps are not disclosed in detail.

The drawings showing embodiments of the system are semi-diagrammatic,and not to scale and, particularly, some of the dimensions are for theclarity of presentation and are shown exaggerated in the drawingfigures. Similarly, although the views in the drawings for ease ofdescription generally show similar orientations, this depiction in thefigures is arbitrary for the most part. Generally, the invention can beoperated in any orientation. The embodiments have been numbered firstembodiment, second embodiment, etc. as a matter of descriptiveconvenience and are not intended to have any other significance orprovide limitations for an embodiment of the present invention.

The term “module” referred to herein can include software, hardware, ora combination thereof in an embodiment of the present invention inaccordance with the context in which the term is used. For example, thesoftware can be machine code, firmware, embedded code, and applicationsoftware. Also for example, the hardware can be circuitry, processor,computer, integrated circuit, integrated circuit cores, a pressuresensor, an inertial sensor, a microelectromechanical system (MEMS),passive devices, or a combination thereof.

The term “processing” as used herein includes filtering signals,decoding symbols, assembling data structures, transferring datastructures, manipulating data structures, and reading and writing datastructures. Data structures are defined to be information arranged assymbols, packets, blocks, files, input data, system generated data, suchas calculated or generated data, and program data.

Referring now to FIG. 1, therein is shown a communication system 100with whitening feedback mechanism in an embodiment of the presentinvention. The communication system 100 includes a mobile device 102,such as a cellular phone or a notebook computer, connected to a network104. The network 104 is a system of wired or wireless communicationdevices that are connected to each other for enabling communicationbetween devices.

For example, the network 104 can include a combination of wires,transmitters, receivers, antennas, towers, stations, repeaters,telephone network, servers, or client devices for a wireless cellularnetwork. The network 104 can also include a combination of routers,cables, computers, servers, and client devices for various sized areanetworks.

The network 104 can include a base station 106 for directly linking andcommunicating with the mobile device 102. The base station 106 canreceive wireless signals from the mobile device 102, transmit signals tothe mobile device 102, process signals, or a combination thereof. Thebase station 106 can also relay signals between other base stations,components within the network 104, or a combination thereof.

The mobile device 102 can be connected to the network 104 through thebase station 106. For example, the base station 106 can include or becoupled with a cell tower, a wireless router, an antenna, a processingdevice, or a combination thereof being used to send signals to orreceive signals from the mobile device 102, such as a smart phone or alaptop computer.

The mobile device 102 can connect to and communicate with other devices,such as other mobile devices, servers, computers, telephones, or acombination thereof. The mobile device 102 can communicate with otherdevices by transmitting signals, receiving signals, processing signals,or a combination thereof and displaying a content of the signals,audibly recreating sounds according to the content of the signals,processing according to the content, such as storing an application orupdating an operating system.

The base station 106 can be used to wirelessly exchange signals forcommunication, including voice signals of a telephone call or datarepresenting a webpage and interactions therewith. The base station 106can also transmit reference signals, training signals, error detectionsignals, error correction signals, header information, transmissionformat, protocol information, or a combination thereof.

Based on the communication method, such as code division multiple access(CDMA), orthogonal frequency-division multiple access (OFDMA), ThirdGeneration Partnership Project (3GPP), Long Term Evolution (LTE), orfourth generation (4G) standards, the communication signals can includea reference portion, a header portion, a format portion, an errorcorrection or detection portion, or a combination thereof imbedded inthe communicated information. The reference portion, header portion,format portion, error correction or detection portion, or a combinationthereof can include a predetermined bit, pulse, wave, symbol, or acombination thereof. The various portions can be embedded within thecommunicated signals at regular time intervals, frequency, code, or acombination thereof.

The base station 106 can communicate a communication content 108 bysending a transmitter signal 110 to the mobile device 102. Thecommunication content 108 is data from a transmitting device intendedfor communication by reproduction or processing at a receiving device.For example, the communication content 108 can be a sequence of bitsintended for displaying, audibly recreating, executing instructions,storing, or a combination thereof at a receiving device, such as themobile station 102.

The base station 106 can modify the communication content 108 togenerate and transmit the transmitter signal 110. The transmitter signal110 is data actually transmitted by a device for communication andhaving a format for transmission. The base station 106 can generate thetransmitter signal 110 by modifying, such as by interleaving or addingformatting information, the communication content 108 according tomethods or standardizations predetermined by the communication system100 to generate a code word 111. The code word 111 is a unit ofinformation having a length predetermined by the communication system100 for communicating information between devices.

For example, the transmitter signal 110 can be the code word 111including a sequence of bits representing the communication content 108,an informational portion, a processing portion, an error correctionportion, a format portion, or a combination thereof. Also for example,the transmitter signal 110 can be a sequence of symbols according to amodulation scheme, such as quadrature amplitude modulation (QAM) orphase-shift keying (PSK), corresponding to the sequence of bits.

The transmitter signal 110 can further include a reference portion 113.The reference portion 113 is a known signal transmitted by a device thatis used to determine various types of information at a receiving device.The reference portion 113 can include a bit, a symbol, a signal pattern,a signal strength, frequency, phase, duration, or a combination thereofpredetermined by the communication system 100, a standard, or acombination thereof. The details of the reference portion 113 can beknown and used by one or all devices in the communication system 100.

The reference portion 113 can include generic information, cell-specificinformation, or a combination thereof. The reference portion 113 canfurther include information regarding a transmission format. The detail,the structure, the content, or a combination thereof for the referenceportion 113 can be used by the receiving device, such as the mobilestation 102, to determine information regarding a mechanism used totransmit data.

The transmitter signal 110 can arrive at the mobile station 102 aftertraversing a transmitter channel 112. The transmitter channel 112 can bewireless, wired, or a combination thereof. The transmitter channel 112can be a direct link between the mobile device 102 and the base station106 or can include repeaters, amplifiers, or a combination thereof. Forexample, the transmitter channel 112 can include communicationfrequency, time slot, packet designation, transmission rate, channelcode, or a combination thereof used for transmitting signals between themobile device 102 and the base station 106.

The mobile station 102 can receive signals from other unintendedsources. The mobile station 102 can receive an interference signal 114including interference content 116 from an interference source 118. Theinterference content 116 is data unintended for communication at thereceiving device. The interference content 116 can be similar to thecommunication content 108 as described above, but intended forcommunication with a different device 120 and received by the firstdevice 102 or for a purpose not currently utilized by the first device102.

The interference source 118 can be any source generating signalsunintended for a specific receiver. The interference signal 114 is dataactually transmitted by the interference source 118 for communicationand having a format for transmission. The interference signal 114 can besimilar to the transmitter signal 110 as described above, and includebits or symbols representing modifications, such as by interleaving oradding formatting information, for the interference content 116.

For example, the interference signal 114 can be transmissions intendedfor the difference device 106 but received at the mobile device 102.Also for example, the interference signal 114 can include signalsintended for communication with the mobile station 102 for a currentlyunrelated purpose or for a function currently not accessed on the mobilestation 102.

As a more specific example, the interference source 118 can includevarious transmitters, including a base station or a satellite dish,another mobile communication device, such as a smart phone or a laptopcomputer, broadcasting station, such as for television or radio, or acombination thereof. Also for example, the interference signal 114 caninclude wireless signals carrying voice or webpage informationassociated with a phone other than the mobile station 102 or broadcastedtelevision signals when the mobile station 102 is not accessing thetelevision viewing feature.

The interference signal 114 can traverse an interference channel 122 toarrive at the mobile station 102. The interference channel 122 can besimilar to the transmitter channel 112 as described above, but for thedifferences in characteristics due to geographical differences betweenthe base station 106 and the interference source 118, due to differencesin method of communication or resources used between the transmittersignal 110 and the interference signal 114, or a combination thereof.

For example, the interference channel 122 can be wireless, wired, or acombination thereof. The interference channel 122 can be an unintendeddirect link between the mobile device 102 and the interference source118, or include repeaters, amplifiers, or a combination thereof. Alsofor example, the interference channel 122 can include communicationfrequency, time slot, packet designation, transmission rate, channelcode, or a combination thereof used for transmitting signals between theinterference source and the different device 120, and further accessibleby the mobile device 102.

The mobile station 102 can receive a receiver signal 124. The receiversignal 124 is information received by a device in the communicationsystem 100. The receiver signal 124 can include the transmitter signal110 that has been altered from traversing the transmitter channel 112.The receiver signal 124 can further include the interference signal 114that has been altered from traversing the interference channel 122.

The communication system 100 can estimate a serving channel estimate 126and an interference channel estimate 128 from the receiver signal 124.The serving channel estimate 126 is a description of changes to signalscaused by the transmitter channel 112. The serving channel estimate 126can describe and quantize reflection, loss, delay, refraction,obstructions, or a combination thereof a signal can experience whiletraversing between the base station 106 and the mobile device 102. Theserving channel estimate 126 can be a matrix value characterizing thetransmitter channel 112.

The interference channel estimate 128 is a description of changes tosignals caused by the interference channel 122. The interference channelestimate 128 can describe and quantize reflection, loss, delay,refraction, obstructions, or a combination thereof a signal canexperience while traversing between the interference source 118 and themobile device 102. The interference channel estimate 128 can be a matrixvalue characterizing the interference channel 122.

For illustrative purposes, the communication system 100 is described ascommunicating by transmitting from the base station 106 and receiving atthe mobile device 102. However, it is understood that the communicationsystem 100 can also transmit from the mobile device 102 and receive atthe base station 106.

Referring now to FIG. 2, therein is shown an exemplary communicationbetween the base station 106 and the mobile device 102. The base station106 can generate and transmit the transmission signal 110 correspondingto a word-set 202. The word-set 202 is a grouping of the code word 111of FIG. 1. The word-set 202 can include the grouping including aquantity of code words, with the quantity corresponding to a number ofantenna ports 204 being used to communicate the transmission signal 110.

The antenna ports 204 are paths or interfaces for accessing individualantennas for communicating with another device. The antenna ports 204can each include or connect a device for radiating or receiving radiowaves.

Each of the antenna ports can use subcarriers 206 for transmitting thetransmission signal 110. The subcarriers 206 are a set of independentfrequencies, phases, or a combination thereof for communicating withanother device. The subcarriers 206 can be a set of frequencies that areorthogonal to each other.

The communication system 100 can use the subcarriers 206 and the antennaports 204 to communicate the transmission signal 110. The base station106 can use the subcarriers 206 and the antenna ports 204 to transmitthe transmission signal 110.

The communication system 100 can use a space-frequency block-coding(SFBC) scheme 208. The space-frequency block-coding scheme 208 is amethod for arranging instances of the code word 111 across multipleantennas and frequencies. The space-frequency block-coding scheme 208can include a pattern for the instances of the code word 111 based onthe quantity of the antenna ports 204.

For example, the base station 106 can include two instances of theantenna ports 204 for transmitting two instances of the code word 111.The base station 106 can transmit a communication word 210 and a furtherword 212 as the communication content 108 of FIG. 1 or exclusiveportions therein. The base station 106 can transmit using acommunication port 214 and a further port 216, with each port using acommunication subcarrier 218 and a further subcarrier 220.

Continuing with the example, the space-frequency block-coding scheme 208can be represented as:

$\begin{matrix}{{\begin{matrix}{{port}\mspace{14mu} 0} \\{{port}\mspace{14mu} 1}\end{matrix}\begin{bmatrix}x_{0} & x_{1} \\{- x_{1}^{*}} & x_{0}^{*}\end{bmatrix}}.} & {{Equation}\mspace{14mu} {(1).}}\end{matrix}$

The terms ‘x₀’ and ‘x₁’ can represent the communication word 210 and thefurther word 212, respectively, while ‘x₀*’ can represent acomplex-conjugate of the communication word 210. The terms ‘port 0’ and‘port 1’ can represent the communication port 214 and the further port216, respectively. First column of matrix values in Equation (1) cancorrespond to instances of the code word 111 transmitted using thecommunication subcarrier 218. Second column of the matrix values inEquation (1) can correspond to instance of the code word 111 transmittedusing the further subcarrier 220.

For illustrative purposes, the communication system 100 will bedescribed as a multiple-input multiple-output (MIMO) system includingtwo instances of the antenna ports 204 and using two instances of thesubcarriers 206 for communicating two instances of the code word 111 inthe word-set 202. However, it is understood that the communicationsystem 100 can include a different configuration.

For example, the communication system 100 can include four antennaports, four subcarriers, four code words, or a combination thereof asshown in FIG. 2. Also for example, the communication system 100 can havevarious combinations in number of antennas between the base station 106and the mobile device 102, including single-input single output (SISO)system.

The mobile device 102 can receive the receiver signal 124 correspondingto the transmitter signal 110. The receiver signal 124 can include acommunication subcarrier data 222 and a further subcarrier data 224. Thecommunication subcarrier data 222 is a portion in the receiver signal124 corresponding to the communication subcarrier 218. The communicationsubcarrier data 222 can be the data in the receiver signal 124 receivedthrough the communication port 214, the further port 216, or acombination thereof. The communication subcarrier data 222 cancorrespond to the communication word 210, the further word 212, aportion thereof, or a combination thereof.

The further subcarrier data 224 is a portion in the receiver signal 124corresponding to the further subcarrier 220. The further subcarrier data224 can be the data in the receiver signal 124 received through thecommunication port 214, the further port 216, or a combination thereof.The further subcarrier data 224 can correspond to the communication word210, the further word 212, a portion thereof, or a combination thereof.

For illustrative purposes, above elements of the communication system100 has been described for the transmitter signal 110 in communicatingbetween the base station 106 and the mobile device 106. However, it isunderstood that the interference source 118 of FIG. 1 and theinterference signal 114 can include the above described elements.

For example, the interference source 118 can include the antenna ports204, use the subcarriers 206 for one or more of the antenna ports 204,or a combination thereof. The interference source 118 can transmitmultiple instances of the code word 111, as independent data oraccording to the space-frequency block-coding scheme.

Focusing on the transmitter signal 110, the receiver signal 124 can beexpressed as:

y _(n) _(r) _(×1)(k)=H _(n) _(r) _(×n) _(t) (k)x _(n) _(t) _(×1)(k)+v_(n) _(r) _(×1)(k).  Equation (2).

For Equation (2), ‘k’ can represent an index for the subcarriers 206.For example, ‘k’ can represent a portion of the receiver signal 124corresponding to the communication subcarrier 218, such as thecommunication subcarrier data 222, ‘k+1’ or ‘k′’ can represent a portionof the receiver signal 124 corresponding to the further subcarrier, suchas the further subcarrier data 224, or a combination thereof.

Further, the term ‘n_(t)’ can represent a quantity of antennas on atransmitting device, such as the base station 106 or the interferencesource 118, while ‘n_(r)’ can represent a quantity of antennas on areceiving device, such as the mobile device 102. The term ‘x_(n) _(t)_(×1)(k)’ can represent a transmitted symbol vector, such as in theinterference signal 114 or the transmitter signal 110, having a size of‘n_(t)×1’, while the term ‘y_(n) _(r) _(×1)(k)’ can represent a receivedsymbol vector, such as in the receiver signal 124, having a size of‘n_(r)×1’.

Moreover, the term, H_(n) _(r) _(×n) _(t) (k) can represent anequivalent channel matrix having a size ‘n_(r)×n_(t)’, such as for theserving channel estimate 126 of FIG. 1, the interference channelestimate 128 of FIG. 1, or a combination thereof. The (i, j)th elementfor ‘H_(n) _(r) _(×n) _(t) (k)’ can be denoted by ‘h_(i,j)(k)’. The term‘v_(n) _(r) _(×1)(k)’ can represent a circularly-symmetric complexGaussian (CSCG) random noise vector having a size of ‘n_(r)×1’.

The communication system 100 can comprehensively or jointly process thecommunication subcarrier data 222 and the further subcarrier data 224when the transmitter signal 110, the interference signal 114, or acombination thereof is transmitted according to the space-frequencyblock-coding scheme 208. The communication system 100 cancomprehensively or jointly calculate covariance, whiten, detect, decode,or a combination thereof for data transmitted across the subcarriers 206according to the space-frequency block-coding scheme 208.

For example, data transmitted over the communication subcarrier 218 andthe further subcarrier 220, such as the communication subcarrier data222 and the further subcarrier data 224, can be processed togetherrather than independently or separately processing the different sets ofdata. As a more specific example, a set of processing steps or circuitscan process, such as calculating, whitening, detecting, decoding, or acombination of processes based on both the communication subcarrier data222 and the further subcarrier data 224.

The communication system 100 can comprehensively or jointly process eachset of data transmitted over the subcarriers 206 instead ofindependently or separately processing the each set of data transmittedover the subcarriers 206, such as using iterations or parallelprocessing separately corresponding to each set of the data. Detailsregarding the comprehensive or joint processing of data transmittedaccording to the space-frequency block-coding scheme 208 will bediscussed below.

Referring now to FIG. 3, therein is shown an exemplary block diagram ofthe communication system 100. The communication system 100 can includethe first device 102, the communication path 104, and the second device106. The first device 102 can send information in a first devicetransmission 308 over the communication path 104 to the second device106. The second device 106 can send information in a second devicetransmission 310 over the communication path 104 to the first device102.

For illustrative purposes, the communication system 100 is shown withthe first device 102 as a client device, although it is understood thatthe communication system 100 can have the first device 102 as adifferent type of device. For example, the first device 102 can be aserver having a display interface.

Also for illustrative purposes, the communication system 100 is shownwith the second device 106 as a server, although it is understood thatthe communication system 100 can have the second device 106 as adifferent type of device. For example, the second device 106 can be aclient device.

For brevity of description in this embodiment of the present invention,the first device 102 will be described as a client device and the seconddevice 106 will be described as a server device. The embodiment of thepresent invention is not limited to this selection for the type ofdevices. The selection is an example of an embodiment of the presentinvention.

The first device 102 can include a first control unit 312, a firststorage unit 314, a first communication unit 316, and a first userinterface 318. The first control unit 312 can include a first controlinterface 322. The first control unit 312 can execute a first software326 to provide the intelligence of the communication system 100.

The first control unit 312 can be implemented in a number of differentmanners. For example, the first control unit 312 can be a processor, anapplication specific integrated circuit (ASIC) an embedded processor, amicroprocessor, a hardware control logic, a hardware finite statemachine (FSM), a digital signal processor (DSP), or a combinationthereof. The first control interface 322 can be used for communicationbetween the first control unit 312 and other functional units in thefirst device 102. The first control interface 322 can also be used forcommunication that is external to the first device 102.

The first control interface 322 can receive information from the otherfunctional units or from external sources, or can transmit informationto the other functional units or to external destinations. The externalsources and the external destinations refer to sources and destinationsexternal to the first device 102.

The first control interface 322 can be implemented in different ways andcan include different implementations depending on which functionalunits or external units are being interfaced with the first controlinterface 322. For example, the first control interface 322 can beimplemented with a pressure sensor, an inertial sensor, amicroelectromechanical system (MEMS), optical circuitry, waveguides,wireless circuitry, wireline circuitry, or a combination thereof.

The first storage unit 314 can store the first software 326. The firststorage unit 314 can also store the relevant information, such as datarepresenting incoming images, data representing previously presentedimage, sound files, or a combination thereof.

The first storage unit 314 can be a volatile memory, a nonvolatilememory, an internal memory, an external memory, or a combinationthereof. For example, the first storage unit 314 can be a nonvolatilestorage such as non-volatile random access memory (NVRAM), Flash memory,disk storage, or a volatile storage such as static random access memory(SRAM).

The first storage unit 314 can include a first storage interface 324.The first storage interface 324 can be used for communication betweenand other functional units in the first device 102. The first storageinterface 324 can also be used for communication that is external to thefirst device 102.

The first storage interface 324 can receive information from the otherfunctional units or from external sources, or can transmit informationto the other functional units or to external destinations. The externalsources and the external destinations refer to sources and destinationsexternal to the first device 102.

The first storage interface 324 can include different implementationsdepending on which functional units or external units are beinginterfaced with the first storage unit 314. The first storage interface324 can be implemented with technologies and techniques similar to theimplementation of the first control interface 322.

The first communication unit 316 can enable external communication toand from the first device 102. For example, the first communication unit316 can permit the first device 102 to communicate with the seconddevice 106 of FIG. 1, an attachment, such as a peripheral device or acomputer desktop, and the communication path 104.

The first communication unit 316 can also function as a communicationhub allowing the first device 102 to function as part of thecommunication path 104 and not limited to be an end point or terminalunit to the communication path 104. The first communication unit 316 caninclude active and passive components, such as microelectronics or anantenna, for interaction with the communication path 104.

The first communication unit 316 can include a first communicationinterface 328. The first communication interface 328 can be used forcommunication between the first communication unit 316 and otherfunctional units in the first device 102. The first communicationinterface 328 can receive information from the other functional units orcan transmit information to the other functional units.

The first communication interface 328 can include differentimplementations depending on which functional units are being interfacedwith the first communication unit 316. The first communication interface328 can be implemented with technologies and techniques similar to theimplementation of the first control interface 322.

The first user interface 318 allows a user (not shown) to interface andinteract with the first device 102. The first user interface 318 caninclude an input device and an output device. Examples of the inputdevice of the first user interface 318 can include a keypad, a touchpad,soft-keys, a keyboard, a microphone, an infrared sensor for receivingremote signals, or any combination thereof to provide data andcommunication inputs.

The first user interface 318 can include a first display interface 330.The first display interface 330 can include a display, a projector, avideo screen, a speaker, or any combination thereof.

The first control unit 312 can operate the first user interface 318 todisplay information generated by the communication system 100. The firstcontrol unit 312 can also execute the first software 326 for the otherfunctions of the communication system 100. The first control unit 312can further execute the first software 326 for interaction with thecommunication path 104 via the first communication unit 316.

The second device 106 can be optimized for implementing an embodiment ofthe present invention in a multiple device embodiment with the firstdevice 102. The second device 106 can provide the additional or higherperformance processing power compared to the first device 102. Thesecond device 106 can include a second control unit 334, a secondcommunication unit 336, and a second user interface 338.

The second user interface 338 allows a user (not shown) to interface andinteract with the second device 106. The second user interface 338 caninclude an input device and an output device. Examples of the inputdevice of the second user interface 338 can include a keypad, atouchpad, soft-keys, a keyboard, a microphone, or any combinationthereof to provide data and communication inputs. Examples of the outputdevice of the second user interface 338 can include a second displayinterface 340. The second display interface 340 can include a display, aprojector, a video screen, a speaker, or any combination thereof.

The second control unit 334 can execute a second software 342 to providethe intelligence of the second device 106 of the communication system100. The second software 342 can operate in conjunction with the firstsoftware 326. The second control unit 334 can provide additionalperformance compared to the first control unit 312.

The second control unit 334 can operate the second user interface 338 todisplay information. The second control unit 334 can also execute thesecond software 342 for the other functions of the communication system100, including operating the second communication unit 336 tocommunicate with the first device 102 over the communication path 104.

The second control unit 334 can be implemented in a number of differentmanners. For example, the second control unit 334 can be a processor, anembedded processor, a microprocessor, hardware control logic, a hardwarefinite state machine (FSM), a digital signal processor (DSP), or acombination thereof.

The second control unit 334 can include a second control interface 344.The second control interface 344 can be used for communication betweenthe second control unit 334 and other functional units in the seconddevice 106. The second control interface 344 can also be used forcommunication that is external to the second device 106.

The second control interface 344 can receive information from the otherfunctional units or from external sources, or can transmit informationto the other functional units or to external destinations. The externalsources and the external destinations refer to sources and destinationsexternal to the second device 106.

The second control interface 344 can be implemented in different waysand can include different implementations depending on which functionalunits or external units are being interfaced with the second controlinterface 344. For example, the second control interface 344 can beimplemented with a pressure sensor, an inertial sensor, amicroelectromechanical system (MEMS), optical circuitry, waveguides,wireless circuitry, wireline circuitry, or a combination thereof.

A second storage unit 346 can store the second software 342. The secondstorage unit 346 can also store the such as data representing incomingimages, data representing previously presented image, sound files, or acombination thereof. The second storage unit 346 can be sized to providethe additional storage capacity to supplement the first storage unit314.

For illustrative purposes, the second storage unit 346 is shown as asingle element, although it is understood that the second storage unit346 can be a distribution of storage elements. Also for illustrativepurposes, the communication system 100 is shown with the second storageunit 346 as a single hierarchy storage system, although it is understoodthat the communication system 100 can have the second storage unit 346in a different configuration. For example, the second storage unit 346can be formed with different storage technologies forming a memoryhierarchal system including different levels of caching, main memory,rotating media, or off-line storage.

The second storage unit 346 can be a volatile memory, a nonvolatilememory, an internal memory, an external memory, or a combinationthereof. For example, the second storage unit 346 can be a nonvolatilestorage such as non-volatile random access memory (NVRAM), Flash memory,disk storage, or a volatile storage such as static random access memory(SRAM).

The second storage unit 346 can include a second storage interface 348.The second storage interface 348 can be used for communication betweenother functional units in the second device 106. The second storageinterface 348 can also be used for communication that is external to thesecond device 106.

The second storage interface 348 can receive information from the otherfunctional units or from external sources, or can transmit informationto the other functional units or to external destinations. The externalsources and the external destinations refer to sources and destinationsexternal to the second device 106.

The second storage interface 348 can include different implementationsdepending on which functional units or external units are beinginterfaced with the second storage unit 346. The second storageinterface 348 can be implemented with technologies and techniquessimilar to the implementation of the second control interface 344.

The second communication unit 336 can enable external communication toand from the second device 106. For example, the second communicationunit 336 can permit the second device 106 to communicate with the firstdevice 102 over the communication path 104.

The second communication unit 336 can also function as a communicationhub allowing the second device 106 to function as part of thecommunication path 104 and not limited to be an end point or terminalunit to the communication path 104. The second communication unit 336can include active and passive components, such as microelectronics oran antenna, for interaction with the communication path 104.

The second communication unit 336 can include a second communicationinterface 350. The second communication interface 350 can be used forcommunication between the second communication unit 336 and otherfunctional units in the second device 106. The second communicationinterface 350 can receive information from the other functional units orcan transmit information to the other functional units.

The second communication interface 350 can include differentimplementations depending on which functional units are being interfacedwith the second communication unit 336. The second communicationinterface 350 can be implemented with technologies and techniquessimilar to the implementation of the second control interface 344.

The first communication unit 316 can couple with the communication path104 to send information to the second device 106 in the first devicetransmission 308. The second device 106 can receive information in thesecond communication unit 336 from the first device transmission 308 ofthe communication path 104.

The second communication unit 336 can couple with the communication path104 to send information to the first device 102 in the second devicetransmission 310. The first device 102 can receive information in thefirst communication unit 316 from the second device transmission 310 ofthe communication path 104. The communication system 100 can be executedby the first control unit 312, the second control unit 334, or acombination thereof. For illustrative purposes, the second device 106 isshown with the partition having the second user interface 338, thesecond storage unit 346, the second control unit 334, and the secondcommunication unit 336, although it is understood that the second device106 can have a different partition. For example, the second software 342can be partitioned differently such that some or all of its function canbe in the second control unit 334 and the second communication unit 336.Also, the second device 106 can include other functional units not shownin FIG. 3 for clarity.

The functional units in the first device 102 can work individually andindependently of the other functional units. The first device 102 canwork individually and independently from the second device 106 and thecommunication path 104.

The functional units in the second device 106 can work individually andindependently of the other functional units. The second device 106 canwork individually and independently from the first device 102 and thecommunication path 104.

For illustrative purposes, the communication system 100 is described byoperation of the first device 102 and the second device 106. It isunderstood that the first device 102 and the second device 106 canoperate any of the modules and functions of the communication system100.

Referring now to FIG. 4, therein is shown a control flow of thecommunication system 100. The communication system 100 can include asignal analysis module 402, an initialization module 404, a messageprocessing module 406, a cancellation module 408, a covariance module410, a preparation module 412, a joint whitening module 414, and aconjugation module 416.

The signal analysis module 402 can be coupled to the initializationmodule 404, the cancellation module 408, the joint whitening module 414,or a combination thereof. The initialization module 404 can be coupledto the message processing module 406, which can be further coupled tothe cancellation module 408. The cancellation module 408 can be coupledto the covariance module 410, which can be further coupled to thepreparation module 412. The preparation module 412 can be coupled to thejoint whitening module 414, which can be further coupled to the messageprocessing module 406.

The modules can be coupled to each other in a variety of ways. Forexample, one or more outputs from one module, such as the messageprocessing module 406 or the covariance module 410, can be connected toone or more inputs of another module, such as the cancellation module408 or the preparation module 412.

The signal analysis module 402 is configured to receive the receiversignal 124 of FIG. 1. The signal analysis module 402 can receive thereceiver signal 124 corresponding to the transmitter signal 110 of FIG.1, the interference signal 114 of FIG. 1, or a combination thereof. Thesignal analysis module 402 can receive the receiver signal 124 forcommunicating the transmitter signal 110 corresponding to thecommunication content 108 of FIG. 1. The interference signal 114 can bereceived incidental to receiving the transmitter signal 110.

The signal analysis module 402 by can receive the receiver signal 124 byrecording the changes detected through the receiving antennas. Thesignal analysis module 402 can sample the voltage levels produced by theantennas in response to change in electro-magnetic flux levels.

The signal analysis module 402 can identify the reference portion 113 ofFIG. 1 in the receiver signal 124. The signal analysis module 402 canidentify the reference portion 113 based on the bit, the symbol, thesignal pattern, the signal strength, the frequency, the phase, theduration, or a combination thereof as predetermined by the communicationsystem 100, a standard, or a combination thereof.

The signal analysis module 402 can identify a message portion, exclusiveof the reference portion 113, corresponding to the word-set 202 of FIG.2, the subcarriers 206 of FIG. 2, the antenna ports 204 of FIG. 2, or acombination thereof. The signal analysis module 402 can further identifythe message portion corresponding to the transmitter signal 110, theinterference signal 114, or a combination thereof.

The signal analysis module 402 can receive the receiver signal 124including signals transmitted based on the space-frequency block-codingscheme 208 of FIG. 2. The signal analysis module 402 can receive thereceiver signal 124 having the communication subcarrier data 222 of FIG.2, the further subcarrier data 224 of FIG. 2, or a combination thereof.The communication subcarrier data 222 and the further subcarrier data224 can be included in the transmitter signal 110, the interferencesignal 114, or a combination thereof for implementing thespace-frequency block-coding scheme 208.

The signal analysis module 402 can receive the receiver signal 124having portions therein corresponding to the communication content 108having the communication word 210 of FIG. 2, the further word 212 ofFIG. 2, or a combination thereof. The signal analysis module 402 canreceive the receiver signal 124 in a variety of ways.

For example, the signal analysis module 402 can receive the receiversignal 124 for jointly processing one, two, or greater multipleinstances of the code word 111 of FIG. 1. Also for example, thecommunication word 210 can be transmitted over an instance of thesubcarriers 206 and correspond to the communication subcarrier data 222,and the further word 212 can be transmitted over a different instance ofthe subcarriers 206 and correspond to the further subcarrier data 224based on the space-frequency block-coding scheme 208.

The receiver signal 124 including the transmitter signal 110 and theinterference signal 114 can be represented as:

y(k)=H(k)x(k)+G(k)z(k)+v(k).  Equation (3).

The receiver signal 124 can be represented as ‘y(k)’, the servingchannel estimate 126 of FIG. 1 can be represented by ‘H(k)’, and thecommunication content 108 can be represented by ‘x(k)’ Also, theinterference channel estimate 128 of FIG. 1 can be represented as ‘G(k)’and the interference content 116 of FIG. 1 can be represented as ‘z(k)’.The noise portion can be represented by ‘v(k)’. The terms in Equation(3) can be Equation (2) represented for both the transmitter signal 110and the interference signal 114.

The signal analysis module 402 can further characterize one or morechannels using the receiver signal 124 or a portion therein, such as themessage portion, the reference portion 113, or a combination thereof.The signal analysis module 402 can characterize the transmitter channel112 of FIG. 1, the interference channel 122 of FIG. 1, or a combinationthereof. The signal analysis module 402 can to characterize thetransmitter channel 112, the interference channel 122, or a combinationthereof by estimating the serving channel estimate 126, the interferencechannel estimate 128, or a combination thereof.

The signal analysis module 402 can estimate the serving channel estimate126, the interference channel estimate 128, or a combination thereofusing a variety of methods. For example, the signal analysis module 402can use the reference portion 113 transmitted by the base station 106 ofFIG. 1 to estimate the serving channel estimate 126. The signal analysismodule 402 can use the reference portion 113 transmitted by theinterference source 118 of FIG. 1 to estimate the serving channelestimate 126.

Continuing with the example, the details regarding the reference portion113, such as original frequency, phase, content, shape, or a combinationthereof, can be predetermined by the communication standard, thecommunication system 100, or a combination thereof. The signal analysismodule 402 can compare the received instances of the referencecommunication to the predetermined parameters for the reference portion113. The signal analysis module 402 can use frequency or time domaintransformation, convolution, transposition, basic mathematicaloperations, or a combination thereof with the predetermined or receivedinstances of the reference communication, or both

Continuing with the example, the signal analysis module 402 can furthercalculate the changes in magnitude, frequency, phase, or a combinationthereof in the reference portion 113 in the receiver signal 124corresponding to the transmitter signal 110, the interference signal114, or a combination thereof. The signal analysis module 402 can usevarious models, such as Rayleigh fading model or additive white Gaussianmodel, to estimate the serving channel estimate 126, the interferencechannel estimate 128, or a combination thereof.

The signal analysis module 402 can adjust the receiver signal 124 bycancelling or discarding portions therein. For example, the signalanalysis module 402 can cancel or discard cell-specific reference signal(CRS) information in the reference portion 113. Also for example, thesignal analysis module 402 can separate the reference portion 113 out ofthe receiver signal 124 and have the receiver signal 124 representremaining portions or only the message portion.

The signal analysis module 402 can receive the receiver signal 124 usingthe first communication unit 316 of FIG. 3, the second communicationunit 336 of FIG. 3, or a combination thereof. The signal analysis module402 can use the first control unit 312 of FIG. 3, the second controlunit 334 of FIG. 3, the first communication unit 316, the secondcommunication unit 336, or a combination thereof to estimate the servingchannel estimate 126, the interference channel estimate 128, or acombination thereof. The signal analysis module 402 can store theserving channel estimate 126, the interference channel estimate 128, thereceiver signal 124, the reference portion 113, or a combination thereofin the first storage unit 314 of FIG. 3, the second storage unit 346 ofFIG. 3, or a combination thereof.

After receiving the receiver signal 124, the control flow can be passedfrom the signal analysis module 402 to the initialization module 402.The control flow can be passed by having processing results of thesignal analysis module 402, such as the serving channel estimate 126,the interference channel estimate 128, the reference portion 113 or acombination thereof, pass from the signal analysis module 402 as inputto the initialization module 404, by storing the processing results at alocation known and accessible to the initialization module 404, bynotifying the initialization module 404, such as by using a flag, aninterrupt, a status signal, or a combination, or a combination ofprocesses thereof.

The signal analysis module 402 can similarly pass to the receiver signal124 representing the message portion, the transmitter signal 110, theinterference signal 114, the communication word 210, the further word212, the communication subcarrier data 222, the further subcarrier data224, or a combination thereof to the cancellation module 408, the jointwhitening module 414, or a combination thereof. The detailed operationsof the cancellation module 408 and the joint whitening module 414 willbe described below.

The initialization module 404 is configured to initially whiten thereceiver signal 124. The initialization module 404 can initially whitenthe receiver signal 124 without accounting for correlations in valuescaused by the space-frequency block-coding scheme 208. For example, theinitialization module 404 can whiten the receiver signal 124 byindependently processing for data corresponding to each of thesubcarriers 206, such as by using iterations of the same processes ormultiple identical circuits.

Also for example, the initialization module 404 can calculate a basecovariance 418. The base covariance 418 is a measure of a relationshipbetween interference and noise without accounting for thespace-frequency block-coding scheme 208. The base covariance 418 can becalculated based on the reference portion 113 corresponding to thetransmitter signal 110, the reference portion 113 corresponding to theinterference signal 114, the receiver signal 124, or a combinationthereof.

Continuing with the example, the initialization module 404 can calculatethe base covariance 418 using:

R(k)=E{(G(k)z(k)+v(k))(G(k)z(k)+v(k))^(H) }=G(k)G ^(H)(k)+σ² I _(n) _(r).  Equation (4).

The ‘I_(n) _(r) ’ term can represent an identity matrix and ‘σ²’ canrepresent a noise variance. The initialization module 404 can calculatethe base covariance 418 based on the interference channel estimate 128,represented by ‘G(k)’, the reference portion 113 corresponding to theinterference signal 114, the interference signal 114, or a combinationthereof.

Continuing with the example, the initialization module 404 can generatea base whitener 420 based on the base covariance 418. The base whitener420 is a value or a set of values used in the whitening process for theinterference signal 114 without accounting for the space-frequencyblock-coding scheme 208.

Continuing with the example, the base whitener 420 can randomize thecommunication subcarrier data 222 or the further subcarrier data 224 ofthe interference signal 114 when the receiver signal 124 or a portiontherein corresponding the whitening process is transmitted without usingthe space-frequency block-coding scheme 208. The base whitener 420 canbe for separately processing portions in the receiver signal 124corresponding to the subcarriers 206 and further whiten the receiversignal 124 with the base whitener 420 for initially processing thereceiver signal 124.

Continuing with the example, a covariance, including the base covariance418, can be expressed as:

R(k)=L(k)L ^(H)(k).  Equation (5).

The term ‘L(k)’ can represent a lower-triangular matrix. Theinitialization module 404 can calculate the lower-triangular matrix bycomputing the Cholesky decomposition of the base covariance 418.Further, the initialization module 404 can generate the base whitener420 using:

W(k)=L ⁻¹(k).  Equation (6).

The term ‘W(k)’ can represent a whitener, such as the base whitener 420.

Continuing with the example, the initialization module 404 can whitenthe receiver signal 124 by combining the receiver signal 124,corresponding to the message portion and without the reference portion113, and the base whitener 420. The initialization module 404 can applymultiplication, addition, matrix operation, or a combination thereof tocombine the receiver signal 124 and the base whitener 420. Theinitialization module 404 can generate an initial-whitening output 422as the result of combining the receiver signal 124 and the base whitener420.

The initialization module 404 can use the first control unit 312, thesecond control unit 334, the first communication unit 316, the secondcommunication unit 336, or a combination thereof to generate theinitial-whitening output 422 using the base whitener 420 and the basecovariance 418. The initialization module 404 can store the processingresults, intermediate values, or a combination thereof in the firststorage unit 314, the second storage unit 346, or a combination thereof.

After initially whitening the receiver signal 124, the control flow canpass from the initialization module 404 to the message processing module406. The control flow can pass similarly as described above between thesignal analysis module 402 and the initialization module 404 but usingprocessing results of the initialization module 404 instead of resultsof the signal analysis module 402.

The message processing module 406 is configured to determine a bit, asymbol, or a combination thereof originally transmitted and intended forcommunication between the base station 106 and the mobile device 102 ofFIG. 1. The message processing module 406 can determine thecommunication content 108 from the receiver signal 124. The messageprocessing module 406 can, detect, decode, interleave, de-interleave, ora combination thereof. The message processing module 406 can further usean iterative process to determine the communication content 108.

The message processing module 406 can initially determine an initialcontent estimate 424. The initial content estimate 424 is an estimationof a bit, a symbol, or a combination thereof in the communicationcontent 108. The initial content estimate 424 can be determined at afirst iteration, without using any prior processing results, or acombination thereof. The initial content estimate 424 can be determinedfollowing a power-on state, a reset state, a handover process, atransmission of a new communication block, or a combination thereof forthe mobile device 102.

The message processing module 406 can determine the initial contentestimate 424 based on the initial-whitening output 422 generated fromthe initialization module 404 based on whitening the receiver signal 124using the base covariance 418 and the base whitener 420, withoutaccounting for the space-frequency block-coding scheme 208. The messageprocessing module 406 can include a detector module 426, an adjustmentmodule 428, and a decoder module 430 for determining the communicationcontent 108.

The detector module 426 is configured to analyze for individual symbolsor bits within the receiver signal 124, or a derivation thereof. Forexample, the detector module 426 can analyze the initial-whiteningoutput 422 for calculating the initial content estimate 424. Also forexample, the detector module 426 can perform the initial analysis forthe receiver signal 124, a derivation thereof, a portion therein, or acombination thereof to determine a likely match for the individualsymbol or bit originally transmitted in the transmitter signal 110 forthe communication content 108.

The detector module 426 can analyze the receiver signal 124, aderivation thereof, a portion therein, or a combination thereof,including the initial-whitening output 422, by detecting a possiblevalue of the bit or the symbol. The detector module 426 can detect bycalculating a likelihood that the receiver signal 124, a derivationthereof, a portion therein, or a combination thereof corresponds to aspecific value for the bit or the symbol. The detector module 426 canalso calculate a set of likelihoods for the receiver signal 124, aderivation thereof, a portion therein, or a combination thereofcorresponding to each of the possible values for the bit or the symbol.

The detector module 426 can calculate various likelihood-based values.The detector module 426 can further use values from other modules, suchas the adjustment module 428 or the decoder module 430, from previousiterations, or a combination thereof. Details regarding the detectormodule 426 will be discussed below.

The adjustment module 428 is configured to rearrange portions of thereceiver signal 124 for determining the communication content 108. Theadjustment module 428 can interleave, de-interleave, or a combinationthereof for the portions of the receiver signal 124 corresponding toeach of the bits or the symbols.

The adjustment module 428 can interleave, de-interleave, or acombination thereof according to various coding schemes, such as aturbo-coding scheme or a polar coding scheme. The adjustment module 428can have details for interleaving, de-interleaving, or a combinationthereof predetermined by the communication system 100, a communicationstandard, or a combination thereof.

The adjustment module 428 can further calculate a difference inlikelihood values. The adjustment module 428 can calculate thedifference between outputs of the detector module 426 and the decodermodule 430, outputs from previous iterations, or a combination thereof.The adjustment module 428 can further pass the difference values to thedetector module 426, the decoder module 430, or a combination thereof.Details regarding the adjustment module 428 will be discussed below.

The decoder module 430 is configured to further analyze for individualsymbols or bits within the receiver signal 124, or a derivation thereof.For example, the decoder module 430 can further analyze theinitial-whitening output 422, output of the detector module 426, outputof the adjustment module 428, or a combination thereof for calculatingthe initial content estimate 424. Also for example, the detector module426 can perform the further analysis for the receiver signal 124, aderivation thereof, a portion therein, or a combination thereof todetermine a likely match for the individual symbol or bit originallytransmitted in the transmitter signal 110 for the communication content108

The decoder module 430 can analyze the receiver signal 124, a derivationthereof, a portion therein, or a combination thereof, including theinitial-whitening output 422, by decoding a possible value of the bit orthe symbol. The decoder module 430 can detect by calculating a furtherlikelihood that the receiver signal 124, a derivation thereof, a portiontherein, or a combination thereof corresponds to a specific value forthe bit or the symbol. The decoder module 430 can also calculate afurther set of likelihoods for the receiver signal 124, a derivationthereof, a portion therein, or a combination thereof corresponding toeach of the possible values for the bit or the symbol.

The decoder module 430 can calculate various likelihood-based values.The decoder module 430 can further use values from other modules, suchas the adjustment module 428 or the detector module 426, from previousiterations, or a combination thereof. Details regarding the decodermodule 430 will be discussed below.

The message processing module 406 can determine the value bit or thesymbol having the highest likelihood value, exceeding a threshold value,or a combination thereof as being included in the communication content108. The message processing module 406 can order a sequence of thevalues of the bits or symbols having satisfactory likelihoods to form apossible instance of the code word 111.

The message processing module 406 can determine the sequence of valuesas the communication content 108 when the possible instances of the codeword 111 pass an error checking process, such as cyclic redundancy check(CRC) or low-density parity-check (LDPC). Further, the messageprocessing module 406 can determine the possible of instance the codeword 111 passing the error check as the code word 111, such as thecommunication word 210 or the further word 212, originally transmittedby the base station 106. The method or process for the error check canbe predetermined by the communication system 100, the communicationstandards, or a combination thereof.

The message processing module 406 can further determine the initialcontent estimate 424 as the result of the detection and decodingprocess. For example, the message processing module 406 can determinedthe initial content estimate 424 as the communication word 210, the bitor symbol therein as determined satisfactory by the message processingmodule 406, the code word 111 passing the error check, or a combinationthereof.

The message processing module 406, including the detector module 426,the adjustment module 428, the decoder module 430, or a combinationthereof can use the first control unit 312, the second control unit 334,the first communication unit 316, the second communication unit 336, ora combination thereof to determine the initial content estimate 424based on the initial-whitening output 422. The message processing module406, including one or more of its sub-modules, can store the initialcontent estimate 424 in the first storage unit 314, the second storageunit 346, or a combination thereof.

After determining the initial content estimate 424, the control flow canpass from the message processing module 406 to the conjugation module416. The control flow can pass similarly as described above between thesignal analysis module 402 and the initialization module 404 but usingprocessing results of the message processing module 406 instead ofresults of the signal analysis module 402.

The conjugation module 416 is configured to conjugate a set of datareceived from one of the subcarriers 206 when the space-frequencyblock-coding scheme 208 is used. The conjugation module 416 canconjugate either the communication subcarrier data 222 or the furthersubcarrier data 224. The conjugation module can conjugate the data byaltering frequency, phase, negating signs for values or portions ofvalues, such as the portion corresponding to imaginary numbers.

For illustrative purpose, the communication system 100 will be discussedas conjugating the further subcarrier data 224. However, it isunderstood that the communication system 100 can conjugate thecommunication subcarrier data 222 instead of the further subcarrier data224.

After conjugating the further subcarrier data 224, the control flow canpass from the conjugation module 416 to the cancellation module 408. Thecontrol flow can pass similarly as described above between the signalanalysis module 402 and the initialization module 404 but usingprocessing results of the conjugation module 416 instead of results ofthe signal analysis module 402.

The cancellation module 408 is configured to estimate the interferencesignal 114 or the interference content 116. The cancellation module 408can estimate the interference signal 114 in the receiver signal 124 bycalculating an interference estimate 432. The cancellation module 408can calculate the interference estimate 432 based on the initial contentestimate 424.

For example, the cancellation module 408 can calculate the interferenceestimate 432 by cancelling the initial content estimate 424 from thereceiver signal 124 or a portion therein, such as the communicationsubcarrier data 222, the further subcarrier data 224, a conjugationthereof, or a combination thereof. Also for example, the cancellationmodule 408 can calculate the interference estimate 432 as a differencebetween the initial content estimate 424, for estimating the transmittersignal 110 or a portion therein, and the receiver signal 124, a portiontherein, a derivation thereof, or a combination thereof.

The cancellation module 408 can use the first control unit 312, thesecond control unit 334, the first communication unit 316, the secondcommunication unit 336, or a combination thereof to calculate theinterference estimate 432. The cancellation module 408 can store theinterference estimate 432 in the first storage unit 314, the secondstorage unit 346, or a combination thereof.

After calculating the interference estimate 432, the control flow canpass from the cancellation module 408 to the covariance module 410. Thecontrol flow can pass similarly as described above between the signalanalysis module 402 and the initialization module 404 but usingprocessing results of the cancellation module 408 instead of results ofthe signal analysis module 402.

The covariance module 410 is configured to calculate covariance ofsignals while accounting for transmissions based on the space-frequencyblock-coding scheme 208. The covariance module 410 can calculate ajoint-covariance 434.

The joint-covariance 434 is a measure of a relationship betweeninterference and noise when a signal is transmitted using thespace-frequency block-coding scheme 208. The joint-covariance 434 can becalculated based on the receiver signal 124, data corresponding to thesubcarriers 206 therein, or a combination thereof. The communicationsystem 100 can use the joint-covariance 434 when the interference source118 transmits the interference signal 114 using the space-frequencyblock-coding scheme 208.

The covariance module 410 can calculate the joint-covariance 434 basedon the interference estimate 432. The covariance module 410 cancalculate the joint-covariance 434 corresponding to the communicationsubcarrier data 222 and the further subcarrier data 224 of theinterference signal 114 represented by the interference estimate 432.The joint-covariance 434 can be for processing the receiver signal 124corresponding to the interference signal 114 transmitted according tothe space-frequency block-coding scheme 208.

When the interference signal 114 is based on the space-frequencyblock-coding scheme 208, the covariance module 410 can calculate thejoint-covariance 434 using:

$\begin{matrix}{{R_{\overset{\_}{v}}(k)} = {{E\left\{ {{\overset{\_}{v}(k)}{{\overset{\_}{v}}^{H}(k)}} \right\}} = {{\begin{bmatrix}{g_{0}\left( {2\; k} \right)} & {- {g_{1}\left( {2k} \right)}} \\{g_{1}^{*}\left( {{2\; k} + 1} \right)} & {g_{0}^{*}\left( {{2\; k} + 1} \right)}\end{bmatrix}\begin{bmatrix}{g_{0}\left( {2\; k} \right)} & {- {g_{1}\left( {2k} \right)}} \\{g_{1}^{*}\left( {{2\; k} + 1} \right)} & {g_{0}^{*}\left( {{2\; k} + 1} \right)}\end{bmatrix}}^{H} + {\sigma^{2}{I_{n_{r}}.}}}}} & {{Equation}\mspace{14mu} {(7).}}\end{matrix}$

The terms ‘g₀’ and ‘g₁’ can each represent to a transmission layer forthe interference signal 114. The index ‘2k’ and ‘2k+1’ can eachrepresent to the instances of the subcarriers 106 for the interferencesignal 114. The term ‘ ’ can represent a variance in noise detected bythe mobile station 102. The covariance module 410 can generate anestimate of R _(v) (k), which will be discussed in detail below.

The joint-covariance 434 can be bigger than the base covariance 418 forjointly processing multiple instances of the subcarriers 206. Forexample, the joint-covariance 434 can have more bits or values, biggermatrix dimension, such as having more columns or rows, or a combinationthereof. The joint-covariance 434 being bigger than the base covariance418 can due to the base covariance 418 representing covariance valuesindividually for each of the subcarriers 206 and the joint-covariance434 representing covariance values collectively for a set of thesubcarriers 206.

The covariance module 410 can use the first communication unit 316, thesecond communication unit 336, the first control unit 312, the secondcontrol unit 334, or a combination thereof to calculate thejoint-covariance 434. The covariance module 410 can store thejoint-covariance 434 in the first storage unit 314, the second storageunit 346, or a combination thereof.

After calculating the joint-covariance 434, the control flow can passfrom the covariance module 410 to the preparation module 412. Thecontrol flow can pass similarly as described above between the signalanalysis module 402 and the initialization module 404 but usingprocessing results of the covariance module 410 instead of results ofthe signal analysis module 402.

The preparation module 412 is configured to generate a whitener whileaccounting for transmissions based on the space-frequency block-codingscheme 208. The preparation module 412 can generate a joint-whitener436.

The joint-whitener 436 is a value or a set of values used in thewhitening process while accounting for transmissions based on thespace-frequency block-coding scheme 208. The joint-whitener 436 can beused to whiten or randomize a combination of related portions within thereceiver signal 124, such as portion corresponding to the interferencesignal 114.

The joint-whitener 436 can be used to whiten the portion correspondingto the interference signal 114, such as the communication subcarrierdata 222 and the further subcarrier data 224 for various possiblecombinations involving the space-frequency block-coding scheme 208. Forexample, the joint-whitener 436 can be used to whiten when both thetransmitter signal 110 and the interference signal 114 are not based onthe space-frequency block-coding scheme 208.

Also for example, the joint-whitener 436 can be used to whiten when onlyone of the transmitter signal 110 and the interference signal 114 arebased on the space-frequency block-coding scheme 208. For furtherexample, the joint-whitener 436 can be used to whiten when both thetransmitter signal 110 and the interference signal 114 are based on thespace-frequency block-coding scheme 208.

The preparation module 412 can generate the joint-whitener 436 using thejoint-covariance 434. The preparation module 412 can generate thejoint-whitener 436 for de-correlating contents of the interferencesignal 114 to randomize the interference signal 114 by comprehensivelyor jointly whitening both the communication subcarrier data 222 and thefurther subcarrier data 224 based on the space-frequency block-codingscheme 208.

The preparation module 412 can generate the joint-whitener 436 similarto the initialization module 404 generating the base whitener 420 asdescribed above, but for using the joint-covariance 434 instead of thebase covariance 418. The preparation module 412 can further useEquations (5)-(6) to generate the joint-whitener 436 with thejoint-covariance 434.

The preparation module 412 can use the first communication unit 316, thesecond communication unit 336, the first control unit 312, the secondcontrol unit 334, or a combination thereof to generate thejoint-whitener 436. The preparation module 412 can store thejoint-whitener 436 in the first storage unit 314, the second storageunit 346, or a combination thereof.

After generating the whitener, the control flow can pass from thepreparation module 412 to the joint whitening module 414. The controlflow can pass similarly as described above between the signal analysismodule 402 and the initialization module 404 but using processingresults of the preparation module 412 instead of results of the signalanalysis module 402.

The joint whitening module 414 is configured to comprehensively orjointly whiten all data received using the subcarriers 206 for thereceiver signal 124. The joint whitening module 414 can comprehensivelyor jointly whiten the interference signal 114 when one or morecomponents of the receiver signal 124 is based on the space-frequencyblock-coding scheme 208.

The joint whitening module 414 can whiten both the communicationsubcarrier data 222 and the further subcarrier data 224 together in acomprehensive or joint manner, simultaneously involving both sets ofdata. The joint whitening module 414 can whiten the communicationsubcarrier data 222 and the further subcarrier data 224 using thejoint-whitener 436.

Since detection process assumes that the interference, the noise, or acombination thereof will be random, the joint whitening module 414 canuse the whitening process to de-correlate the interference signal 114,the noise, or a combination thereof associated with the communicationsubcarrier data 222 and the further subcarrier data 224. The base jointwhitening module 414 can perform the whitening process by combining thejoint-whitener 436, such as by multiplying, adding, performing matrixoperations, or a combination thereof, with the communication subcarrierdata 222 and the further subcarrier data 224.

The joint whitening module 414 can generate a joint-whitening output438. The joint whitening module 414 can generate a joint-whiteningoutput 438 based on the receiver signal 124 and the joint-whitener 436.

The joint whitening module 414 can generate the joint-whitening output438 by combining the joint-whitener 436, the communication subcarrierdata 222, and the further subcarrier data 224 or the conjugated instanceof the further subcarrier data 224. The joint-whitening output 438 caninclude one, multiple, or all portions previously corresponding to theinterference signal 114, the noise, or a combination thereof and havinga block diagonal matrix as a covariance thereof after the whiteningprocess.

The joint whitening module 414 can use the first communication unit 316,the second communication unit 336, the first control unit 312, thesecond control unit 334, or a combination thereof to perform thewhitening process. The joint whitening module 414 can store thejoint-whitening output 438 in the first storage unit 314, the secondstorage unit 346, or a combination thereof.

After generating the joint-whitening output 438, the control flow canpass from the joint whitening module 414 to the message processingmodule 406. The control flow can pass similarly as described abovebetween the signal analysis module 402 and the initialization module 404but using processing results of the joint whitening module 414 insteadof results of the signal analysis module 402.

The message processing module 406 can be further configured to determinethe communication content 108 by further analyzing the receiver signal124 based on the joint-whitening output 438 generated from the jointwhitening module 414 based on the joint-covariance 434 and thejoint-whitener 436. The message processing module 406 and itssub-modules can determine a joint-estimation feedback 440.

The joint-estimation feedback 440 is a refined estimation of a bit, asymbol, or a combination thereof in the communication content 108. Thejoint-estimation feedback 440 can be determined based on processingresults of the first iteration, such as the initial content estimate424. The joint-estimation feedback 440 can further account for thereceiver signal 124 having one or more component transmitted based onthe space-frequency block-coding scheme 208.

The message processing module 406, including its sub-modules, candetermine the joint-estimation feedback 440 similar to determining theinitial content estimate 424 as described above, but based on thejoint-whitening output 438 instead of the initial-whitening output 422.For example, the message processing module 406 can detect, decode,interleave, de-interleave, or a combination thereof based on thejoint-whitening output 438 instead of the initial-whitening output 422.Also for example, the message processing module 406 can use likelihoodsfor determining the communication content 108, the joint-whiteningoutput 438, or a combination thereof.

The message processing module 406 can further determine thejoint-estimation feedback 440 as the result of the detection anddecoding process. For example, the message processing module 406 candetermined the joint-estimation feedback 440 for the communication word210, the further word 212, the bit or symbol therein as determinedsatisfactory by the message processing module 406, the code word 111passing the error check, or a combination thereof corresponding to thetransmitter signal 110.

The message processing module 406 can determine the communicationcontent 108, the joint-estimation feedback 440, portions therein, or acombination thereof using:

{circumflex over (x)}(k)=E(x(k))=Σ_(sεC) sP(x(k)=s).  Equation (8).

The message processing module 406 can determine the joint-estimationfeedback 440 as an average of probabilities corresponding to thetransmitter signal 110 or a portion therein corresponding to a certainsymbol. The joint-estimation feedback 440 can be used similar to a pilotor reference portion of the symbol.

The message processing module 406, including the detector module 426,the adjustment module 428, the decoder module 430, or a combinationthereof can similarly use the first control unit 312, the second controlunit 334, the first communication unit 316, the second communicationunit 336, or a combination thereof to determine the joint-estimationfeedback 440 based on the joint-whitening output 438. The messageprocessing module 406, including one or more of its sub-modules, canstore the joint-estimation feedback 440 in the first storage unit 314,the second storage unit 346, or a combination thereof.

The message processing module 406 can determine the receiver signal 124as instances of the code word 111 determined and verified therein whenall instances of the code word 111 have been detected and decoded.Otherwise, the message processing module 406 can pass the control flowto the cancellation module 408 as described above.

The cancellation module 408 can calculate the interference estimate 432using the joint-estimation feedback 440 instead of the initial contentestimate 424 as described above. The cancellation module 408 cancalculate the interference estimate 432 based on cancelling thejoint-estimation feedback 440 from the receiver signal 124.

The cancellation module 408 can use:

$\begin{matrix}{{\hat{r}( k)} = {\left\lbrack \begin{matrix}{y\left( {2\; k} \right)} \\{y*\left( {{2\; k} + 1} \right)}\end{matrix} \right\rbrack - {{\left\lbrack \begin{matrix}{\hat{H}\left( {2\; k} \right)} & 0 \\0 & {\hat{H}*\left( {{2\; k} + 1} \right)}\end{matrix} \right\rbrack\left\lbrack \begin{matrix}{\hat{x}\left( {2\; k} \right)} \\{\hat{x}*\left( {{2\; k} + 1} \right)}\end{matrix} \right\rbrack}.}}} & {{Equation}\mspace{14mu} {(9).}}\end{matrix}$

The interference estimate 432 can be represented by and thejoint-estimation feedback 440 can be represented by ‘{circumflex over(x)}’.

The covariance module 410, the preparation module 412, and the jointwhitening module 414 can operate as described above based on processingresults for the joint-estimation feedback 440 instead of the initialcontent estimate 424. For example, the covariance module 410 cancalculate the joint-covariance 434 as described above with theinterference estimate 432 based on cancelling the joint-estimationfeedback 440 from the receiver signal 124. Also for example, the jointwhitening module 414 can generate the joint-whitening output 438 usingthe joint-whitener 436 as described above based on cancelling thejoint-estimation feedback 440 from the receiver signal 124.

As a more specific example, the covariance module 410 can calculate thejoint-covariance 434 using:

$\begin{matrix}{\hat{R} = {\frac{1}{}{\sum\limits_{k \in }^{\;}\; {{\hat{r}(k)}{{{\hat{r}}^{H}(k)}.}}}}} & {{Equation}\mspace{14mu} {(10).}}\end{matrix}$

The term ‘

’ can represent the set of subcarrier pairs used for data-aidedcovariance estimation. The operation ‘∥’ can denote a set cardinality.The covariance module 410 can calculate ‘{circumflex over (R)}’ as theestimate of the joint-covariance R _(v) (k) shown in Equation (7).

The communication system 100 can continue the iteration until themessage processing module 406 determines the receiver signal 124. Forexample, the communication system 100 can continue the iterative processuntil all instances of the code word 111 in a communication block havebeen detected and decoded. Also for example, the communication system100 can continue the iterative process until a preset quantity for thecode word 111, as preset by the communication system 100, the basestation 106 using format or header portions of the transmitter signal110, the communication standard, or a combination thereof.

It has been discovered that the joint-whitening output 438 based on thebase covariance 418 and the base whitener 420 provides reduction inerror and increase throughput for the communication system 100. Thejoint whitening process using the joint-whitening output 438, the basecovariance 418, and the base whitener 420 across the subcarriers 206 canaccurately account for correlations in the interference signal 114 dueto the space-frequency block-coding scheme 208. The accounting for thespace-frequency block-coding scheme 208 can improve the performance ofthe whitening process, which can lead to accurate detection and decodingof the communication content 108.

It has also been discovered that the initial-whitening output 422 frominitially whitening the receiver signal 124 using the base covariance418 and the base whitener 420, and the joint-whitening output 438 fromsubsequently whitening for the space-frequency block-coding scheme 208using the joint-covariance 434 and the joint-whitener 436 provide forincreased robustness with faster processing time. Initially usingindependent interference whitening as a starting point and subsequentlyrefining the whitening process for the space-frequency block-codingscheme 208 can account for signals transmitted both with and without thespace-frequency block-coding scheme 208. The combination process canfurther provide a dynamic starting point for the joint whiteningprocess, which can reduce the number of iterations necessary to detector decode the communication content 108.

It has further been discovered that the interference estimate 432 andthe joint-estimation feedback 440 provide reliability and accuracy indetecting and decoding the communication content 108. The interferenceestimate 432 and the joint-estimation feedback 440 can providereliability by estimating the interference signal 114, which can be usedto accurately whiten the receiver signal 124 regardless of whether thesignals were transmitted using the space-frequency block-coding scheme208. The accuracy and improved convergence can be realized based on thefact that the estimations can be used to further separate content andinterference, which can be an additional utilization for the processingresults for eliminating errors.

Referring now to FIG. 5, therein is shown a detailed exemplary flow ofthe communication system 100. Details of the message processing module406 of FIG. 4 and the iterative whitening and cancellation processfollowing the initial iteration can be shown in FIG. 5.

For the detection process of the message processing module 406, thedetector module 426 can determine a detector a-priori value 502,calculate a detector a-posteriori value 504, or a combination thereof.The detector a-priori value 502 is a prior knowledge for the detectormodule 426 about the communication content 108 of FIG. 1, thetransmitter signal 110 of FIG. 1, the interference content 116 of FIG.1, the interference signal 114 of FIG. 1, the receiver signal 124 ofFIG. 1, a symbol therein, a bit therein, or a combination thereof.

The detector a-priori value 502 can be one or more measures ofconfidence levels associated with a likely transmitted symbol orlikelihoods for all possible symbols, or the associated bit values,corresponding to the analyzed portion in the receiver signal 124. Thedetector a-priori value 502 can be a log likelihood ratio (LLR).

The detector a-priori value 502 can be expressed as:

$\begin{matrix}{{L^{a}\left( b_{i} \right)} = {\log {\frac{p\left( {b_{i} = {+ 1}} \right)}{p\left( {b_{i} = {- 1}} \right)}.}}} & {{Equation}\mspace{14mu} {(11).}}\end{matrix}$

The detector a-priori value 502 can be a logarithmic result of a ratiobetween a probability that a certain bit or symbol within the receiversignal 124 had a transmitted value of +1 and a different probabilitythat the same bit or symbol had a transmitted value of −1 or 0.

The detector module 426 can determine a value resulting from a moduleexternal to the detector module 426, such as the decoder module 430 orthe adjustment module 428, as the detector a-priori value 502. Thedetector module 426 can also determine a value resulting from a previousiteration in determining the communication content 108 as the detectora-priori value 502.

The detector a-posteriori value 504 is a later knowledge for thedetector module 426 about the communication content 108, the transmittersignal 110, the interference content 116, the interference signal 114,the receiver signal 124, a symbol therein, a bit therein, or acombination thereof. The detector a-posteriori value 504 can be one ormore measures of confidence levels associated with a likely transmittedsymbol or likelihoods for all possible symbols, or the associated bitvalues, corresponding to an analyzed portion in the receiver signal 124.The detector a-posteriori value 504 can be a LLR.

The detector module 426 can calculate the detector a-posteriori value504 according to:

$\begin{matrix}{{L^{A}\left( b_{i} \right)} = {\log {\frac{p\left( {b_{i} = {{+ 1}y}} \right)}{p\left( {b_{i} = {{- 1}y}} \right)}.}}} & {{Equation}\mspace{14mu} {(12).}}\end{matrix}$

The detector a-posteriori value 504 can be a logarithmic result of aratio between a probability that a certain bit or symbol within thereceiver signal 124 had a transmitted value of +1 given the receiversignal 124, the initial-whitening output 422 of FIG. 4, thejoint-whitening output 438 of FIG. 4, or a combination thereof and adifferent probability that the same bit or symbol had a transmittedvalue of −1 or 0 given the receiver signal 124, the initial-whiteningoutput 422, the joint-whitening output 438, or a combination thereof.

The decoder module 430 can similarly determine a decoder a-priori value506, calculate a decoder a-posteriori value 508, or a combinationthereof. The decoder a-priori value 506 is a prior knowledge for thedecoder module 430 about the communication content 108, the transmittersignal 110, the interference content 116, the interference signal 114,the receiver signal 124, a symbol therein, a bit therein, or acombination thereof.

The decoder a-priori value 506 can be similar to the detector a-priorivalue 502. For example, the decoder module 430 can determine the decodera-priori value 506 based on Equation (11), a value resulting from amodule external to the detector module 426, such as the detector module426 or the adjustment module 428, a value resulting from a previousiteration in determining the communication content 108, or a combinationthereof.

The decoder a-posteriori value 508 is a later knowledge for the decodermodule 430 about the communication content 108, the transmitter signal110, the interference content 116, the interference signal 114, thereceiver signal 124, a symbol therein, a bit therein, or a combinationthereof. The decoder a-posteriori value 508 can be similar to thedetector a-posteriori value 504. For example, the decoder a-posteriorivalue 508 can be an LLR value. Also for example, the decoder module 430can calculate the decoder a-posteriori value 508 using Equation (12) oran approximation based on Equation (12).

The detector module 426 can pass the detector a-posteriori value 504 tothe adjustment module 428. The decoder module 430 can pass the decodera-posteriori value 508 to the adjustment module 428. The adjustmentmodule 428 can calculate a detector extrinsic value 510, a decoderextrinsic value 512, or a combination thereof. The adjustment module 428can further interleave or de-interleave the processing results of thedecoder module 430, the detector module 426, or a combination thereof.

For example, the adjustment module 428 can calculate the detectorextrinsic value 510 based on the detector a-posteriori value 504. Theadjustment module 428 can calculate the detector extrinsic value 510using:

$\begin{matrix}\begin{matrix}{{L^{e}\left( b_{i} \right)} = {{L^{A}\left( b_{i} \right)} - {L^{a}\left( b_{i} \right)}}} \\{= {\ln {\frac{\sum\limits_{x\text{:}\mspace{11mu} b_{i = {+ 1}}}^{\;}\; {\exp\left( {{- {{y - {Hx}}}^{2}} + {\frac{1}{2}{\sum\limits_{j \neq i}^{\;}\; {L^{a}\left( b_{j} \right)}}}} \right)}}{\sum\limits_{x\text{:}\mspace{11mu} b_{i = {- 1}}}^{\;}\; {\exp\left( {{- {{y - {Hx}}}^{2}} + {\frac{1}{2}{\sum\limits_{j \neq i}^{\;}\; {L^{a}\left( b_{j} \right)}}}} \right)}}.}}}\end{matrix} & {{Equation}\mspace{14mu} {(13).}}\end{matrix}$

The adjustment module can calculate the detector extrinsic value 510 asthe difference between the detector a-posteriori value and the detectora-priori value 502, which can be the decoder extrinsic value 512including de-interleaving of the values.

Also for example, the adjustment module 428 can calculate the decoderextrinsic value 512 based on the decoder a-posteriori value 508. Theadjustment module 428 can also use Equation (13) and calculate thedecoder extrinsic value 512 as the difference between the decodera-posteriori value and the decoder a-priori value 506, which can be thedetector extrinsic value 510 including interleaving of the values.

The adjustment module 428 can further approximate the detector extrinsicvalue 510, the decoder extrinsic value 512, or a combination thereof.The adjustment module 428 can approximate using:

$\begin{matrix}{{L^{e}\left( b_{i} \right)} \approx {{\max\limits_{{x\text{:}\mspace{11mu} b_{i}} = {+ 1}}\mspace{14mu} \left( {{- {{y - {Hx}}}^{2}} + {\frac{1}{2}{\sum\limits_{j \neq i}^{\;}\; {b_{j}{L^{a}\left( b_{j} \right)}}}}} \right)} - {\max\limits_{{x:\mspace{11mu} b_{i}} = {- 1}}\mspace{14mu} {\left( {{- {{y - {Hx}}}^{2}} + {\frac{1}{2}{\sum\limits_{j \neq i}^{\;}\; {b_{j}{L^{a}\left( b_{j} \right)}}}}} \right).}}}} & {{Equation}\mspace{14mu} (14)}\end{matrix}$

Also for example, the adjustment module 428 can interleave orde-interleave by rearranging the order to change the sequence oflikelihood values, bits, symbols, or a combination thereof. Theadjustment module 428 can interleave or de-interleave based on patternor format predetermined by the communication system 100, thecommunication standard, the coding scheme, or a combination thereof.

For illustrative purposes, the message processing module 406 isdescribed as being partitioned between the detector module 426, theadjustment module 428, and the decoder module 430. However, it isunderstood that the message processing module 406 can be partitioneddifferently. For example, the detector extrinsic value 510 can becalculated in the detector module 426, the decoder extrinsic value 512can be calculated in the decoder module 430, or a combination thereof.

The message processing module 406 can further include an iterativedetection-decoding scheme 514. The iterative detection-decoding scheme514 is a configuration or a set of instructions for repeating thedetection and decoding processes until a condition is satisfied. Theiterative detection-decoding scheme 514 can be a hardware configuration,a set of firmware steps, a set of software instructions, or acombination thereof.

For example, the iterative detection-decoding scheme 514 can be thewiring, adder, shifter, register settings, a combination thereof, or alocation or sequence thereof. Also for example, the iterativedetection-decoding scheme 514 can be a threshold, a condition, aninstruction set, a repeat mechanism, or a combination thereof.

The message processing module 406 can use the iterativedetection-decoding scheme 514 to repeat the process of the detectormodule 426, the decoder module 430, the adjustment module 428, or acombination thereof. The message processing module 406 can further usethe iterative detection-decoding scheme 514 to initialize input values,feedback output value to a producing module, feedback output value to amodule external to the producing module, or a combination thereof.

The message processing module 406 can use the iterativedetection-decoding scheme 514 to control iteration specific to thedetection, iteration specific to the decoding process, overall iterationof the detection and decoding, or a combination thereof. For example,the iterative detection-decoding scheme 514 can control iterationsinternal to the detector module 426, iterations internal to the decodermodule 430, overall iterations for the message processing module 406controlling a combination of the detector module 426, the adjustmentmodule 428, and the decoder module 430.

The message processing module 406 can use the iterativedetection-decoding scheme 514 to determine all instances of the codeword 111 of FIG. 1 corresponding to the transmitter signal 110 or thecommunication content 108 therein. For example, the message processingmodule 406 can use the iterative detection-decoding scheme 514 todetermine a quantity for the code word 111 predetermined by thecommunication system 100, the base station 106 of FIG. 1 using format orheader portions of the transmitter signal 110, the communicationstandard, or a combination thereof.

The communication system 100 can similarly have a feedback profile 516.The feedback profile 516 is a configuration or a set of instructions forusing an estimate of the receiver signal 124 to further process thereceiver signal 124. The feedback profile 516 can be a hardwareconfiguration, a set of firmware steps, a set of software instructions,or a combination thereof for controlling feedback of content estimationfor cancelling, whitening, determining or a combination thereof.

The feedback profile 516 can be based on a number of code words used intransmitting the transmitter signal 110, the interference signal 114, ora combination thereof. For example, FIG. 5 can show the feedback profile516 for processing one instance of the code word 111 using iterations inthe transmitter signal 110, the interference signal 114, or acombination thereof.

For processing one code word, the feedback profile 516 can have anoutput of the decoder module 430 tied to an input of the cancellationmodule 408. The feedback profile 516 can have an output of the decodermodule 430 directly tied to an input of the cancellation module 408without any other feedback loops or connections outside of the iterativedetection-decoding scheme 514.

The feedback profile 516 can have the joint-estimation feedback 440 forone instance of the code word 111 for feeding back to the cancellationmodule 408. The feedback profile 516 can have the joint-estimationfeedback 440 representing the code word 111, the communication content108, the interference content 116, the decoder a-posteriori value 508corresponding thereto, the decoder extrinsic value 512 correspondingthereto, or a combination thereof fed back to the cancellation module408.

The communication system 100 can operate based on the joint-estimationfeedback 440 as described above. For example, the cancellation module408 can determine the interference estimate 432 of FIG. 4, which can bethe basis for calculating the joint-covariance 434 of FIG. 4, thejoint-whitener 436 of FIG. 4, or a combination thereof.

It has been discovered that the iterative detection-decoding scheme 514in conjunction with the joint-covariance 434, the joint-whitener 436,and the joint-estimation feedback 440 provide an effective way toiteratively suppress the interference signal 114 based on thespace-frequency block-coding scheme 208 of FIG. 2. The joint whiteningprocess can account for the space-frequency block-coding scheme 208while the iterative detection-decoding scheme 514 can provideefficiently implementing the joint whitening process by iterativelydetermining and separating the communication content 108 andinterference content 106, which can be further reused to suppress theinterference signal 114.

Referring now to FIG. 6, therein is shown a further detailed exemplaryflow of the communication system 100. The communication system 100 canprocess two instances of the code word 111 of FIG. 1 using the iterationformat. The detector module 426 can include a base detection module 602and a further detection module 604 for simultaneously and jointlyprocessing two instances of the code word 111. The decoder module 430can similarly include a base decoding module 606 and a further decodingmodule 608.

The base detection module 602 and the base decoding module 606 canfunction similar to the detector module 426 and decoder module 430 asdescribed above, but for processing one instance of the code word 111.Similarly the further detection module 604 and the further decodingmodule 608 can function similar to the detector module 426 and decodermodule 430 described above, but for processing a different instance ofthe code word 111.

For example, the base detection module 602 can detect the communicationword 210 of FIG. 2, including calculating the detector a-posteriorivalue 504 of FIG. 5. The base decoding module 606 can decode thecommunication word 210, including calculating the decoder a-posteriorivalue 508. The adjustment module 428 can calculate the detectorextrinsic value 510 of FIG. 5 and the decoder extrinsic value 512 ofFIG. 5, interleave, de-interleave, or a combination thereof for thecommunication word 210.

Also for example, the further detection module 604 can detect thefurther word 212 of FIG. 2, and the further decoding module 608 candecode the further word 212 using processes described above. The furtherdetection module 604 and the further decoding module 608 can calculateand determine the various corresponding values for the further word 212.

The adjustment module 428 can process the instances of the code word 111separately and independent of each other. For example, the adjustmentmodule 428 can include circuitry or instructions corresponding to theiterative detection-decoding scheme 514 of FIG. 5 that process thecommunication word 210 exclusive of the further word 212. Also forexample, the base detection module 602 and the base decoding module 606can include circuitry or instructions corresponding to the iterativedetection-decoding scheme 514 that process the communication word 210exclusive of the further word 212.

As a more specific example, the base detection module 602 a portion ofthe adjustment module 428, and the base decoding module 606 can includea set of circuits or instructions separate from the further detectionmodule 604, a different portion of the adjustment module 428, and thefurther decoding module 608. The communication system 100 can processthe communication word 210 and the further word 212 in parallel, withoutthe process of one affecting the process of the other, using the twoindependent sets of circuits or instructions.

Also a further specific example, the base detection module 602 and thebase decoding module 606 can a set of circuits or instructions sharedwith the further detection module 604 and the further decoding module608. The processing for the communication word 210 can be a base outeriteration, and the processing for the further word 212 can be adifferent outer iteration independent of the base outer iteration.

The feedback profile 516 of FIG. 5 can accommodate results for the twoinstances of the code word 111. The joint-estimation feedback 440 ofFIG. 4 can include a base feedback 610 and a further feedback 612.

The base feedback 610 can be information regarding the communicationword 210, such as the a-posteriori or extrinsic value, determined orverified instance of the communication word 210, a symbol or a bittherein, or a combination thereof. The further feedback 612 can beinformation regarding the further word 212, such as the a-posteriori orextrinsic value, determined or verified instance of the further word212, a symbol or a bit therein, or a combination thereof.

The message processing module 406 of FIG. 4 can determine thejoint-estimation feedback 440 having the base feedback 610 correspondingto the communication word 210 and the further feedback 612 for both andthe further word 212. The base feedback 610 and the further feedback 612can be for the communication word 210 the further feedback 612 and inthe communication content 108 of FIG. 1.

The feedback profile 516 can provide the base feedback 610 from decodingthe communication word 210 in the base decoding module 606 to thefurther detection module 604 for processing the further word 212, to thecancellation module 408 for cancelling the communication word 210, or acombination thereof. The feedback profile 516 can further provide thefurther feedback 612 from decoding the further word 212 in the furtherdecoding module 608 to the base detection module 602 for processing thecommunication word 210, to the cancellation module 408 for cancellingthe further word 212, or a combination thereof.

For example, the base decoding module 606 can be directly coupled to thefurther detection module 604, the cancellation module 408, or acombination thereof according to the feedback profile 516. Also forexample, the further decoding module 608 can be directly coupled to thebase detection module 602, the cancellation module 408, or a combinationthereof according to the feedback profile 516.

The cancellation module 408 can include a base cancelling module 614 anda further cancelling module 616. The base cancelling module 614 isconfigured to cancel the communication word 210 from the receiver signal124 of FIG. 1 or a portion therein, such as the communication subcarrierdata 222 of FIG. 2, the further subcarrier data 224 of FIG. 2, aconjugation thereof, or a combination thereof. The further cancellingmodule 616 is configured to cancel the further word 212 from thereceiver signal 124 of FIG. 1 or a portion therein, such as thecommunication subcarrier data 222, the further subcarrier data 224, aconjugation thereof, or a combination thereof.

The base cancelling module 614 and the further cancelling module 616 canbe similar to the cancellation module 408 as described above. Forexample, the base cancelling module 614 can cancel the communicationword 210 by cancelling the base feedback 610 from the receiver signal124 or a portion therein, such as the communication subcarrier data 222,the further subcarrier data 224, a conjugation thereof, or a combinationthereof. Also for example, the further cancelling module 616 cansimilarly cancel the further feedback 612.

The cancellation module 408 can calculate the interference estimate 432of FIG. 4 by cancelling the communication word 210 before cancelling thefurther word 212. The cancellation module 408 can alternatively cancelthe further word 212 before cancelling the communication word 210. Thecancellation module 408 can calculate the interference estimate 432 asthe result of cancelling both the base feedback 610 and the furtherfeedback 612 from the receiver signal 124 or a portion therein, such asthe communication subcarrier data 222, the further subcarrier data 224,a conjugation thereof, or a combination thereof.

The feedback profile 516 can provide the base feedback 610 from decodingthe communication word 210 in the base decoding module 606 to the basecancelling module 614. The feedback profile 516 can also provide thefurther feedback 612 from decoding the further word 212 in the furtherdecoding module 608 to the further cancelling module 616. For example,the base decoding module 606 can be directly coupled to the basecancelling module 614 according to the feedback profile 516. Also forexample, the further decoding module 608 can be directly coupled to thefurther cancelling module 616 according to the feedback profile 516.

The communication system 100 can operate based on the joint-estimationfeedback 440 as described above. For example, the cancellation module408 can determine the interference estimate 432, which can be the basisfor calculating the joint-covariance 434 of FIG. 4, the joint-whitener426 of FIG. 4, or a combination thereof.

It has been discovered that the feedback profile 516 passing the basefeedback 610 to the base cancelling module 614 and the further detectionmodule 604 and passing the further feedback 612 to the furthercancellation module 408 and the base detection module 602 providesreliability and accuracy in detecting and decoding the communicationcontent 108. The feedback profile 516 can use the base feedback 610 andthe further feedback 612 to account for multiple instances of the codeword 111. Further, the feedback profile 516 providing the decodingresults to both the detector module 426 and the cancellation module 408can provide accurate and immediate updates to the detection process andthe cancellation process regarding both the communication word 210 andthe further word 212.

Referring now to FIG. 7, therein is shown a further detailed exemplaryflow of the communication system 100. The communication system 100 canimplement the successive interference cancellation in processing thereceiver signal 124 of FIG. 1. The communication system 100 cansuccessively cancel the interference using a base processing branch 702and a further processing branch 704.

The base processing branch 702 is a set of circuits, instructions,modules, or a combination thereof for processing the communication word210 of FIG. 2. The base processing branch 702 can determine thecommunication word 210.

The further processing branch 704 is a set of circuits, instructions,modules, or a combination thereof for processing the further word 212 ofFIG. 2. The further processing branch 704 can determine the further word212. The base processing branch 702 and the further processing branch704 can be independent and separate sets of circuits, instructions,modules, or a combination thereof or share one or more portions therein.

For example, the communication system 100 can have instance of theconjugation module 416, the base cancelling module 614, the furthercancelling module 616, the covariance module 410, the preparation module412, the joint whitening module 414, or a combination thereof for thebase processing branch 702. The communication system 100 can also havedifferent instance of the conjugation module 416, the base cancellingmodule 614, the further cancelling module 616, the covariance module410, the preparation module 412, the joint whitening module 414, or acombination thereof for the further processing branch 704.

As a more specific example, the base processing branch 702 and thefurther processing branch 704 can be separate circuitry or processesthat can run in parallel to separately and simultaneously process forboth the communication word 210 and the further word 212. As a furtherspecific example, the base processing branch 702 and the furtherprocessing branch 704 can each represent an outer iteration. Thecommunication system 100 can use one or more of the shared modules,circuits, instructions, or a combination thereof to process for thecommunication word 210 or the further word 212 during one outeriteration, and process for the other instance of the code word 111 ofFIG. 1 during another outer iteration.

The base processing branch 702 can cancel the further feedback 612 fromthe receiver signal 124 or a portion therein, such as the communicationsubcarrier data 222 of FIG. 2 and the further subcarrier data 224 ofFIG. 2, before the base feedback 610 by arranging the base cancellingmodule 614 to process after the further cancelling module 616.Similarly, the further processing branch 704 can cancel the furtherfeedback 612 after the base feedback 610.

The base processing branch 702 can further pass the product ofcancelling the further feedback 612 to the joint whitening module 414.The further processing branch 704 can pass the product of cancelling thebase feedback 610 to the joint whitening module 414. The joint whiteningmodule 414 can use the result from cancelling the further feedback 612and then the base feedback 610 in the base processing branch 702, theresult from cancelling the base feedback 610 and then the furtherfeedback 612 in the further processing branch 704, or a combinationthereof in whitening the signal.

The base processing branch 702 can further include the base detectionmodule 602 and the base decoding module 606. The further processingbranch 704 can include the further detection module 604 and the furtherdecoding module 608.

The base detection module 602 can use the output of cancelling only thefurther feedback 612 from the further cancelling module 616, through thejoint whitening module 414, or a combination thereof for the detectionprocess. The further detection module 604 can use the output ofcancelling only the base feedback 610 from the base cancelling module614, through the joint whitening module 414, or a combination thereoffor the detection process. The base detection module 602, the basedecoding module 606, the further detection module 604, and the furtherdecoding module 608 can operate as described above.

Thus, the communication word 210 and the further word 212 can beseparately processed using the base processing branch 702 and thefurther processing branch 704. The communication system 100 or a portiontherein, such as the message processing module 406 of FIG. 4, candetermine the base feedback 610 using the base processing branch 702 anddetermine the further feedback 612 using the further processing branch704.

The feedback profile 516 of FIG. 5 can be used to provide processingresults of the base processing branch 702 to the further processingbranch 704 and the results of the further processing branch 704 to thefurther processing branch 704. The feedback profile 516 can provide boththe communication word 210 and the further word 212 to each of the baseprocessing branch 702 and the further processing branch 704.

For example, the feedback profile 516 can provide the base feedback 610for cancelling the communication word 210 to both the base processingbranch 702 and the further processing branch 704. The feedback profile516 can have the base decoding module 606 directly connected to the basecancelling module 614 for the base processing branch 702 and for thefurther processing branch. The feedback profile 516 can include feedbackpath from the base decoding module 606 to the base detection module 602through the iterative detection-decoding scheme 514 of FIG. 5, withoutany other direct connections between the base detection module 602 andthe base decoding module 606.

Also for example, the feedback profile 516 can provide the furtherfeedback 612 for cancelling the further word 212 to both the baseprocessing branch 702 and the further processing branch 704. Thefeedback profile 516 can have the further decoding module 608 directlyconnected to the further cancelling module 616 for the base processingbranch 702 and for the further processing branch. The feedback profile516 can include feedback path from the further decoding module 608 tothe further detection module 604 through the iterativedetection-decoding scheme 514, without any other direct connectionsbetween the further detection module 604 and the further decoding module608.

It has been discovered that the base processing branch 702 and thefurther processing branch 704 for separately processing thecommunication word 210 and the further word 212, with each branchcancelling using both the base feedback 610 and the further feedback 612as provided by the feedback profile 516 provide reduction in detectioncomplexity while improving the error rate. The successive interferencecancelling process implemented using the base processing branch 702, thefurther processing branch 704, and the feedback profile 516 reduces theamount of data being processed for the whitening process and thedetection-decoding process.

Further, the joint-whitening process implemented with the covariancemodule 410, the preparation module 412, and the joint whitening module414 in both the base processing branch 702 and the further processingbranch 704 can accurately account for the correlation in signals basedon the space-frequency block-coding scheme 208 of FIG. 2. The accountingof the correlation in signals across the subcarriers 206 of FIG. 2 canaccurately whiten the interference signal 114 of FIG. 1, which canimprove the accuracy.

The communication system 100 has been described with module functions ororder as an example. The communication system 100 can partition themodules differently or order the modules differently. For example,functions of the covariance module 410 and the preparation module 412can be combined. Also for example, calculation of the joint-covariance434 of FIG. 4, generation of the joint-whitener 436, and the functionsof the joint whitening module 414 can be combined or grouped into amodule.

The modules described in this application can be hardware implementationor hardware accelerators, including passive circuitry, active circuitry,or both, in the first control unit 316 of FIG. 3 or in the secondcontrol unit 338 of FIG. 3. The modules can also be hardwareimplementation or hardware accelerators, including passive circuitry,active circuitry, or both, within the mobile device 102 of FIG. 1 or thebase station 106 of FIG. 1 but outside of the first control unit 316 orthe second control unit 338, respectively.

The physical transformation from the joint-covariance 434, thejoint-whitener 436, and the joint-whitening output 438 of FIG. 4 resultsin the movement in the physical world, such as content displayed orrecreated for the user on the mobile device 102. The content, such asnavigation information or voice signal of a caller, recreated on thefirst device 102 can influence the user's movement, such as followingthe navigation information or replying back to the caller. Movement inthe physical world results in changes to the interference signal 114 orinterference channel estimate 128 of FIG. 1, which can be fed back intothe system through the joint-estimation feedback 440 to influence thecontent or a determination thereof.

Referring now to FIG. 8, therein is shown a flow chart of a method 800of operation of a communication system 100 in an embodiment of thepresent invention. The method 800 includes: calculating ajoint-covariance based on a receiver signal for communicating acommunication content in a transmitter signal with an interferencesignal using subcarriers based on a space-frequency block-coding schemein a block 802; generating a joint-whitener with a control unit based onthe joint-covariance for randomizing the interference signal in a block804; generating a joint-whitening output based on the receiver signaland the joint-whitener in a block 806; determining a joint-estimatefeedback based on the joint-whitening output in a block 808; andcancelling the joint-estimate feedback from the receiver signal forcommunicating the communication content with a device in a block 810.

It has been discovered that the joint-whitening output 438 of FIG. 4based on the base covariance 418 of FIG. 4 and the base whitener 420 ofFIG. 4 provides reduction in error and increase throughput for thecommunication system 100. It has also been discovered that theinitial-whitening output 422 of FIG. 4 from initially whitening thereceiver signal 124 of FIG. 1 using the base covariance 418 and the basewhitener 420, and the joint-whitening output 438 from subsequentlywhitening for the space-frequency block-coding scheme 208 of FIG. 2using the joint-covariance 434 of FIG. 4 and the joint-whitener 436 ofFIG. 4 provide for increased robustness with faster processing time.

It has further been discovered that the interference estimate 432 ofFIG. 4 and the joint-estimation feedback 440 of FIG. 4 providereliability and accuracy in detecting and decoding the communicationcontent 108 of FIG. 1. It has been discovered that the iterativedetection-decoding scheme 514 of FIG. 5 in conjunction with thejoint-covariance 434, the joint-whitener 436, and the joint-estimationfeedback 440 provide an effective way to iteratively suppress theinterference signal 114 of FIG. 1 based on the space-frequencyblock-coding scheme 208.

It has been discovered that the feedback profile 516 of FIG. 5 passingthe base feedback 610 of FIG. 6 to the base cancelling module 614 ofFIG. 6 and the further detection module 604 of FIG. 6 and passing thefurther feedback 612 of FIG. 6 to the further cancellation module 408 ofFIG. 4 and the base detection module 602 of FIG. 6 provides reliabilityand accuracy in detecting and decoding the communication content 108. Ithas been discovered that the base processing branch 702 of FIG. 7 andthe further processing branch 704 of FIG. 7 for separately processingthe communication word 210 of FIG. 2 and the further word 212 of FIG. 2,with each branch cancelling using both the base feedback 610 and thefurther feedback 612 as provided by the feedback profile 516 providereduction in detection complexity while improving the error rate.

The resulting method, process, apparatus, device, product, and/or systemis straightforward, cost-effective, uncomplicated, highly versatile,accurate, sensitive, and effective, and can be implemented by adaptingknown components for ready, efficient, and economical manufacturing,application, and utilization. Another important aspect of an embodimentof the present invention is that it valuably supports and services thehistorical trend of reducing costs, simplifying systems, and increasingperformance.

These and other valuable aspects of an embodiment of the presentinvention consequently further the state of the technology to at leastthe next level.

While the invention has been described in conjunction with a specificbest mode, it is to be understood that many alternatives, modifications,and variations will be apparent to those skilled in the art in light ofthe aforegoing description. Accordingly, it is intended to embrace allsuch alternatives, modifications, and variations that fall within thescope of the included claims. All matters set forth herein or shown inthe accompanying drawings are to be interpreted in an illustrative andnon-limiting sense.

What is claimed is:
 1. A communication system comprising: a covariancemodule configured to calculate a joint-covariance based on a receiversignal for communicating a communication content in a transmitter signalwith an interference signal using subcarriers based on a space-frequencyblock-coding scheme; a preparation module, coupled to the covariancemodule, configured to generate a joint-whitener with a control unitbased on the joint-covariance for randomizing the interference signal; ajoint whitening module, coupled to the preparation module, configured togenerate a joint-whitening output based on the receiver signal and thejoint-whitener; a message processing module, coupled to the jointwhitening module, configured to determine a joint-estimation feedbackbased on the joint-whitening output; and a cancellation module, coupledto the message processing module, configured to cancel thejoint-estimation feedback from the receiver signal for communicating thecommunication content with a device.
 2. The system as claimed in claim 1wherein the covariance module is configured to calculate thejoint-covariance with an interference estimate based on cancelling thejoint-estimation feedback from the receiver signal.
 3. The system asclaimed in claim 1 further comprising: an initialization module, coupledto the covariance module, configured to generate a base whitener basedon a base covariance for separately processing portions in the receiversignal corresponding to the subcarriers and whiten the receiver signalwith the base whitener for initially processing the receiver signal;wherein: the message processing module is configured to determine aninitial content estimate based on whitening the receiver signal; and thecancellation module is configured to cancel the initial content estimatefrom the receiver signal.
 4. The system as claimed in claim 1 wherein:the message processing module is configured to determine thejoint-estimation feedback for a communication word in the communicationcontent; and the cancellation module is configured to cancel thejoint-estimation feedback from the receiver signal according to afeedback profile for the communication word.
 5. The system as claimed inclaim 1 further comprising: the message processing module is configuredto determine the joint-estimation feedback having a base feedback and afurther feedback for both a communication word and a further word in thecommunication content; and the cancellation module is configured tocancel the base feedback and the further feedback from the receiversignal according to a feedback profile for the communication word andthe further word.
 6. The system as claimed in claim 1 wherein: themessage processing module is configured to determine thejoint-estimation feedback according to an iterative detection-decodingscheme; and the cancellation module is configured to cancel thejoint-estimation feedback from the receiver signal according to afeedback profile.
 7. The system as claimed in claim 6 furthercomprising: a signal analysis module, coupled to the message processingmodule, configured to receive the receiver signal including thetransmitter signal and the interference signal; wherein: the messageprocessing module is configured to determine the joint-estimationfeedback corresponding to the transmitter signal; and the cancellationmodule is configured to determine an interference estimate according tothe feedback profile for cancelling the transmitter signal from thereceiver signal using the joint-estimation feedback for calculating thejoint-covariance.
 8. The system as claimed in claim 6 furthercomprising: a signal analysis module, coupled to the message processingmodule, configured to receive the receiver signal having a communicationword and a further word in the communication content; wherein: themessage processing module is configured to determine thejoint-estimation feedback having a base feedback and a further feedbackcorresponding to the communication word and the further word; and thecancellation module is configured to determine an interference estimateaccording to the feedback profile for cancelling the communication wordand the further word from the receiver signal using the base feedbackand the further feedback.
 9. The system as claimed in claim 6 furthercomprising: a signal analysis module, coupled to the message processingmodule, configured to receive the receiver signal having a communicationword and a further word in the communication content; and wherein: themessage processing module is configured to determine a base feedbackusing a base processing branch and a further feedback using a furtherprocessing branch, the base processing branch for determining thecommunication word and the further processing branch for determining thefurther word.
 10. The system as claimed in claim 6 further comprising: asignal analysis module, coupled to the message processing module,configured to receive the receiver signal having a communication wordand a further word in the communication content; and wherein: themessage processing module is configured to determine a base feedbackusing a base processing branch and a further feedback using a furtherprocessing branch, the base processing branch for determining thecommunication word and the further processing branch for determining thefurther word.
 11. A method of operation of a communication systemcomprising: calculating a joint-covariance based on a receiver signalfor communicating a communication content in a transmitter signal withan interference signal using subcarriers based on a space-frequencyblock-coding scheme; generating a joint-whitener with a control unitbased on the joint-covariance for randomizing the interference signal;generating a joint-whitening output based on the receiver signal and thejoint-whitener; determining a joint-estimation feedback based on thejoint-whitening output; and cancelling the joint-estimation feedbackfrom the receiver signal for communicating the communication contentwith a device.
 12. The method as claimed in claim 11 wherein calculatingthe joint-covariance includes calculating the joint-covariance with aninterference estimate based on cancelling the joint-estimation feedbackfrom the receiver signal.
 13. The method as claimed in claim 11 whereincalculating the joint-covariance includes: generating a base whitenerbased on a base covariance for separately processing portions in thereceiver signal corresponding to the subcarriers; whitening the receiversignal with the base whitener for initially processing the receiversignal; determining an initial content estimate based on whitening thereceiver signal; and cancelling the initial content estimate from thereceiver signal.
 14. The method as claimed in claim 11 wherein:determining the joint-estimation feedback includes determining thejoint-estimation feedback for a communication word in the communicationcontent; and cancelling the joint-estimation feedback includescancelling the joint-estimation feedback from the receiver signalaccording to a feedback profile for the communication word.
 15. Themethod as claimed in claim 11 wherein: determining the joint-estimationfeedback includes determining the joint-estimation feedback having abase feedback and a further feedback for both a communication word and afurther word in the communication content; and cancelling thejoint-estimation feedback includes cancelling the base feedback and thefurther feedback from the receiver signal according to a feedbackprofile for the communication word and the further word.
 16. The methodas claimed in claim 11 wherein: determining the joint-estimationfeedback includes determining the joint-estimation feedback according toan iterative detection-decoding scheme; and cancelling thejoint-estimation feedback includes cancelling the joint-estimationfeedback from the receiver signal according to a feedback profile. 17.The method as claimed in claim 16 further comprising: receiving thereceiver signal including the transmitter signal and the interferencesignal; wherein: determining the joint-estimation feedback includesdetermining the joint-estimation feedback corresponding to thetransmitter signal; and cancelling the joint-estimation feedbackincludes determining an interference estimate according to the feedbackprofile for cancelling the transmitter signal from the receiver signalusing the joint-estimation feedback for calculating thejoint-covariance.
 18. The method as claimed in claim 16 furthercomprising: receiving the receiver signal having a communication wordand a further word in the communication content; wherein: determiningthe joint-estimation feedback includes determining the joint-estimationfeedback having a base feedback and a further feedback corresponding tothe communication word and the further word; and cancelling thejoint-estimation feedback includes determining an interference estimateaccording to the feedback profile for cancelling the communication wordand the further word from the receiver signal using the base feedbackand the further feedback.
 19. The method as claimed in claim 16 furthercomprising: receiving the receiver signal having a communication wordand a further word in the communication content; and wherein:determining the joint-estimation feedback includes determining a basefeedback using a base processing branch and a further feedback using afurther processing branch, the base processing branch for determiningthe communication word and the further processing branch for determiningthe further word.
 20. The method as claimed in claim 16 wherein:receiving the receiver signal having a communication word and a furtherword in the communication content; and wherein: determining thejoint-estimation feedback includes determining the joint-estimationfeedback having a base feedback and a further feedback corresponding tothe communication word and the further word according to the feedbackprofile for feeding back the base feedback and the further feedback inaddition to the iterative detection-decoding scheme.